.login-container{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#0f172a,#1a2847,#1e3a5f);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.login-box{background:#1e293bcc;border:1px solid rgba(0,212,255,.3);border-radius:12px;box-shadow:0 4px 16px #00d4ff1a,0 2px 8px #0006;width:100%;max-width:420px;padding:48px;animation:slideUp .4s ease-out;backdrop-filter:blur(20px)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.login-header{text-align:center;margin-bottom:32px}.login-header h1{margin:0 0 8px;color:#00d4ff;font-size:28px;font-weight:700;letter-spacing:-.5px;text-shadow:0 0 20px rgba(0,212,255,.4)}.login-header p{margin:0;color:#a0aec0;font-size:14px;font-weight:400}.login-form h2{color:#00d4ff;margin:0 0 28px;font-size:20px;text-align:center;font-weight:600}.form-group{margin-bottom:20px}.form-group input{width:100%;padding:12px 14px;border:1px solid rgba(0,212,255,.2);background-color:#0f172a99;color:#e0e7ff;border-radius:8px;font-size:14px;transition:all .3s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#00d4ff;box-shadow:0 0 0 3px #00d4ff33;background-color:#1e293bcc}.form-group input:disabled{background-color:#0f172a66;cursor:not-allowed;opacity:.6}.error-message{background-color:#dc262626;color:#fca5a5;padding:12px 14px;border-radius:8px;margin-bottom:20px;font-size:14px;border-left:3px solid #dc2626}.login-button{width:100%;padding:12px 16px;background:linear-gradient(135deg,#00d4ff,#06f);color:#0f172a;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px;box-shadow:0 2px 8px #00d4ff4d}.login-button:hover:not(:disabled){background:linear-gradient(135deg,#00e5ff,#0080ff);transform:translateY(-2px);box-shadow:0 4px 12px #00d4ff66}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-toggle{margin-top:24px;text-align:center}.auth-toggle p{margin:0;color:#a0aec0;font-size:14px}.toggle-button{background:none;border:none;color:#00d4ff;font-weight:600;cursor:pointer;font-size:14px;padding:0;margin-left:4px;text-decoration:none;transition:color .2s ease}.toggle-button:hover:not(:disabled){color:#00e5ff;text-decoration:underline}.toggle-button:disabled{opacity:.5;cursor:not-allowed}.login-footer{margin-top:28px;padding-top:20px;border-top:1px solid rgba(0,212,255,.2);text-align:center}.credentials-info{background:linear-gradient(135deg,#00d4ff14,#3366cc14);border:1px solid rgba(0,212,255,.3);border-radius:10px;padding:16px;margin-top:12px}.credentials-label{margin:0 0 12px;color:#00d4ff;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.credentials-box{display:flex;flex-direction:column;gap:10px}.credential-item{display:flex;justify-content:space-between;align-items:center;background:#0f172a80;padding:10px 12px;border-radius:6px;border:1px solid rgba(0,212,255,.15)}.credential-key{color:#a0aec0;font-size:12px;font-weight:500}.credential-value{color:#00d4ff;font-size:13px;font-weight:700;font-family:Courier New,monospace;letter-spacing:.3px}@media (max-width: 600px){.login-box{margin:20px;padding:40px 24px}.login-header h1{font-size:24px}.login-form h2{font-size:18px}}.home-page{padding:0;background:#0f172a;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#e0e7ff}.home-content{padding:40px 24px;max-width:1400px;margin:0 auto}.welcome-section{margin-bottom:60px;padding:40px;background:linear-gradient(135deg,#00d4ff1a,#0066ff1a);border:1px solid rgba(0,212,255,.2);border-radius:12px;text-align:center}.welcome-section h1{font-size:2.5rem;margin:0 0 10px;background:linear-gradient(135deg,#00d4ff,#06f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-section p{font-size:1.1rem;color:#94a3b8;margin:0}.dashboards-section{margin-bottom:60px}.dashboards-section h2{font-size:1.8rem;margin-bottom:30px;color:#e0e7ff}.dashboards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:40px}.dashboard-card{background:#1e293bcc;border:1px solid rgba(0,212,255,.2);border-radius:12px;padding:30px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column}.dashboard-card:hover{background:#1e293bf2;border-color:#00d4ff80;box-shadow:0 8px 24px #00d4ff33;transform:translateY(-4px)}.card-icon{font-size:3rem;margin-bottom:20px;text-align:center}.dashboard-card h3{font-size:1.4rem;margin:0 0 10px;color:#00d4ff}.dashboard-card p{color:#94a3b8;margin:0 0 20px;flex-grow:1;font-size:.95rem}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid rgba(0,212,255,.1)}.status{font-size:.85rem;padding:6px 12px;background:#10b98133;color:#10b981;border-radius:6px}.status:not(:contains("Active")){background:#64748b33;color:#94a3b8}.quick-stats{background:#1e293bcc;border:1px solid rgba(0,212,255,.2);border-radius:12px;padding:30px}.quick-stats h2{font-size:1.4rem;margin-bottom:25px;color:#e0e7ff}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.stat-card{background:#0f172acc;border:1px solid rgba(0,212,255,.15);border-radius:8px;padding:20px;text-align:center;transition:all .3s ease}.stat-card:hover{border-color:#00d4ff66;box-shadow:0 4px 12px #00d4ff1a}.stat-value{font-size:2rem;font-weight:700;color:#00d4ff;margin-bottom:8px}.stat-label{font-size:.85rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}@media (max-width: 768px){.home-content{padding:20px 16px}.welcome-section{padding:30px 20px}.welcome-section h1{font-size:1.8rem}.dashboards-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}.provision-overlay{position:fixed;inset:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;backdrop-filter:blur(4px);animation:fadeIn .3s ease-out}.provision-modal{background:linear-gradient(135deg,#1e293bf2,#1a2847f2);border:1px solid rgba(0,212,255,.3);border-radius:16px;box-shadow:0 20px 60px #00d4ff26,0 0 40px #00d4ff1a;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease-out;backdrop-filter:blur(20px)}@keyframes slideUp{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}.provision-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid rgba(0,212,255,.2);position:sticky;top:0;background:linear-gradient(135deg,#1e293bfa,#1a2847fa)}.provision-header h2{margin:0;color:#00d4ff;font-size:20px;font-weight:700;text-shadow:0 0 10px rgba(0,212,255,.3)}.close-button{background:none;border:none;color:#a0aec0;font-size:24px;cursor:pointer;transition:color .2s ease;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px}.close-button:hover{color:#00d4ff;background-color:#00d4ff1a}.provision-form{padding:24px}.provision-message{padding:14px 16px;border-radius:8px;margin-bottom:20px;font-weight:400;font-size:.95rem;animation:slideIn .3s ease-out}.provision-message-success{background-color:#10b98126;color:#6ee7b7;border-left:3px solid #10b981}.provision-message-error{background-color:#dc262626;color:#fca5a5;border-left:3px solid #dc2626}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.form-group label{display:block;margin-bottom:8px;color:#cbd5e1;font-weight:500;font-size:14px}.form-group input,.form-group select{width:100%;padding:12px 14px;border:1px solid rgba(0,212,255,.2);background-color:#0f172a99;color:#e0e7ff;border-radius:8px;font-size:14px;transition:all .3s ease;box-sizing:border-box;font-family:inherit}.form-group input::placeholder{color:#64748b}.form-group input:focus,.form-group select:focus{outline:none;border-color:#00d4ff;box-shadow:0 0 0 3px #00d4ff33;background-color:#1e293bcc}.form-group input:disabled,.form-group select:disabled{background-color:#0f172a66;cursor:not-allowed;opacity:.6}.form-group select{cursor:pointer}.form-group select option{background-color:#1e293b;color:#e0e7ff}.provision-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid rgba(0,212,255,.2)}.btn-cancel,.btn-provision{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.3px}.btn-cancel{background:#6366f133;color:#a0aec0;border:1px solid rgba(99,102,241,.3)}.btn-cancel:hover:not(:disabled){background:#6366f14d;color:#cbd5e1;border-color:#6366f180}.btn-provision{background:linear-gradient(135deg,#00d4ff,#06f);color:#0f172a;border:none;box-shadow:0 4px 12px #00d4ff4d}.btn-provision:hover:not(:disabled){background:linear-gradient(135deg,#00e5ff,#0080ff);box-shadow:0 6px 16px #00d4ff66;transform:translateY(-2px)}.btn-provision:active:not(:disabled){transform:translateY(0)}.btn-cancel:disabled,.btn-provision:disabled{opacity:.6;cursor:not-allowed;transform:none}.provision-modal::-webkit-scrollbar{width:8px}.provision-modal::-webkit-scrollbar-track{background:#00d4ff0d}.provision-modal::-webkit-scrollbar-thumb{background:#00d4ff4d;border-radius:4px}.provision-modal::-webkit-scrollbar-thumb:hover{background:#00d4ff80}@media (max-width: 600px){.provision-modal{width:95%;max-height:95vh}.provision-header{padding:16px}.provision-header h2{font-size:18px}.provision-form{padding:16px}.form-grid{grid-template-columns:1fr;gap:12px}.provision-actions{flex-direction:column-reverse}.btn-cancel,.btn-provision{width:100%}}.provision-type-toggle{display:flex;gap:16px;flex-wrap:wrap}.radio-label{display:flex;align-items:center;gap:8px;cursor:pointer;color:#cbd5e1;font-size:14px;user-select:none;padding:8px 12px;border-radius:6px;transition:all .2s ease}.radio-label:hover{background-color:#00d4ff1a}.radio-label input[type=radio]{width:auto;margin:0;cursor:pointer;accent-color:#00d4ff}.form-group.full-width{grid-column:1 / -1}.novnc-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.novnc-modal{background:#fff;border-radius:8px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;width:90%;max-width:1200px;height:85vh;max-height:800px;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.novnc-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0;background:#f5f5f5;border-radius:8px 8px 0 0;gap:16px}.novnc-modal-header h2{margin:0;font-size:18px;color:#333;font-weight:600;flex:1}.novnc-status{display:flex;align-items:center;gap:8px;font-size:14px;color:#666;padding:6px 12px;background:#fff;border-radius:4px}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;animation:pulse 2s ease-in-out infinite}.status-dot.connected{background:#4caf50}.status-dot.disconnected{background:#f44336}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.novnc-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.novnc-modal-close:hover{background:#e0e0e0;color:#333}.novnc-modal-body{flex:1;overflow:hidden;position:relative;background:#000}.novnc-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#999;font-size:16px;gap:16px}.spinner{border:3px solid rgba(255,255,255,.2);border-top:3px solid #00d4ff;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.novnc-error{display:flex;align-items:center;justify-content:center;height:100%;color:#d32f2f;font-size:16px;padding:20px;text-align:center;background:#d32f2f1a}.novnc-canvas{width:100%;height:100%;display:block;outline:none}.novnc-modal-footer{padding:15px 20px;border-top:1px solid #e0e0e0;background:#f5f5f5;display:flex;justify-content:space-between;align-items:center;border-radius:0 0 8px 8px}.novnc-instructions{flex:1;font-size:14px;color:#666}.novnc-instructions p{margin:4px 0 0}.novnc-instructions p:first-child{margin-top:0;color:#333;font-weight:500}.novnc-close-button{padding:8px 16px;background:#666;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;margin-left:16px}.novnc-close-button:hover{background:#555}.novnc-close-button:active{transform:scale(.98)}.novnc-close-button:active{background:#444}@media (prefers-reduced-motion: no-preference){.novnc-modal{animation:slideUp .3s ease-out}.novnc-modal-overlay{animation:fadeIn .2s ease-in}}.enhanced-dashboard{min-height:100vh;background:radial-gradient(circle at 20% 20%,rgba(0,212,255,.06),transparent 30%),radial-gradient(circle at 80% 0%,rgba(99,102,241,.08),transparent 28%),linear-gradient(135deg,#0f172a,#111c33 45%,#0f1d3b);color:#e9efff;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;padding:12px 0 32px}.dashboard-top-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 28px;background:#0b11228c;border-bottom:1px solid rgba(255,255,255,.05);backdrop-filter:blur(12px)}.search-area{flex:1;max-width:360px}.search-input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid rgba(0,212,255,.18);background:#0f172ab3;color:#e9efff;font-size:.95rem;outline:none;transition:all .2s ease}.search-input:focus{border-color:#00d4ff80;box-shadow:0 0 0 3px #00d4ff26}.top-actions{display:flex;align-items:center;gap:10px;margin-left:16px}.icon-button{width:38px;height:38px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#e9efff;cursor:pointer;transition:all .2s ease;font-size:.95rem}.icon-button:hover{border-color:#00d4ff80;background:#00d4ff1f}.logout-icon{color:#0f172a;background:linear-gradient(135deg,#00d4ff,#0097d1);border:none;box-shadow:0 8px 18px #00d4ff40}.user-info{color:#cbd5e1;font-weight:600;padding:0 10px}.breadcrumb{display:flex;align-items:center;gap:8px;padding:8px 28px 20px;color:#94a3b8;font-size:.95rem}.breadcrumb span{color:#9fb3c8}.breadcrumb .active{color:#00d4ff;font-weight:700}.dashboard-controls{display:flex;align-items:center;gap:12px;padding:0 28px 18px}.btn-provision-vm{background:linear-gradient(135deg,#00d4ff,#08c);color:#0f172a;border:none;border-radius:10px;padding:12px 22px;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .25s ease;box-shadow:0 10px 22px #00d4ff47;letter-spacing:.3px}.btn-provision-vm:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 28px #00d4ff59}.btn-provision-vm:disabled{opacity:.55;cursor:not-allowed}.message{margin:0 28px 16px;padding:12px 16px;border-radius:10px;font-size:.95rem;border-left:4px solid;background:#ffffff0a}.message-success{color:#6ee7b7;border-left-color:#10b981}.message-error{color:#fca5a5;border-left-color:#ef4444}.summary-section{padding:0 28px 28px}.summary-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.summary-header h2{margin:0;color:#00d4ff;font-size:1.5rem;letter-spacing:-.2px}.gauge-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.gauge-card{background:linear-gradient(145deg,#1a243de6,#11182fe6);border:1px solid rgba(0,212,255,.18);border-radius:16px;padding:18px 16px;box-shadow:0 16px 34px #00000040;display:flex;flex-direction:column;gap:12px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;align-items:center;justify-content:center}.gauge-card:hover{transform:translateY(-4px);border-color:#00d4ff66;box-shadow:0 18px 40px #00d4ff33}.gauge-title{font-size:1rem;font-weight:700;color:#e9efff;letter-spacing:.02em;text-align:center}.gauge{display:flex;flex-direction:column;align-items:center;gap:6px;justify-content:center;width:100%}.gauge-svg{width:120px;height:120px}.gauge-bg{stroke:#1f2d44;opacity:.8}.gauge-fg{stroke:#00d4ff;transform:rotate(-90deg);transform-origin:50% 50%;transition:stroke-dashoffset .3s ease}.gauge-value{fill:#e9efff;font-size:1.4rem;font-weight:700}.gauge-sublabel{font-size:.85rem;color:#9fb3c8;text-align:center;line-height:1.3}.main-content-grid{display:grid;grid-template-columns:2fr 1fr;gap:20px;padding:0 28px 28px}@media (max-width: 1200px){.main-content-grid{grid-template-columns:1fr}}.charts-section{display:grid;grid-template-columns:1fr 1fr;gap:20px}@media (max-width: 900px){.charts-section{grid-template-columns:1fr}}.chart-card{background:linear-gradient(135deg,#162037d9,#121b31e6);border:1px solid rgba(0,212,255,.16);border-radius:16px;padding:20px;min-height:320px;position:relative;overflow:hidden;box-shadow:0 16px 36px #00000040}.chart-card:after{content:"";position:absolute;top:-40%;right:-40%;width:240px;height:240px;background:radial-gradient(circle,rgba(0,212,255,.08),transparent 70%);border-radius:50%}.chart-card:hover{border-color:#00d4ff4d}.card-header h3{margin:0 0 14px;color:#e9efff;font-size:1rem;font-weight:700}.chart-container{position:relative;height:300px;display:flex}.chart-wrapper{flex:1;position:relative;display:flex;flex-direction:column;margin-left:45px}.chart-title{font-size:.8rem;color:#9fb3c8;text-transform:uppercase;margin-bottom:8px;letter-spacing:.2px}.chart-svg{flex:1}.chart-axis-y,.chart-axis-x{color:#6b7b91;font-size:.75rem}.chart-axis-y{position:absolute;left:0;top:0;bottom:0;display:flex;flex-direction:column;justify-content:space-between;padding:8px 0;width:40px;text-align:right}.chart-axis-x{position:absolute;bottom:-22px;left:0;right:0;display:flex;justify-content:space-between;padding:0 8px}.vms-section{background:linear-gradient(135deg,#162037e6,#10182de6);border:1px solid rgba(0,212,255,.16);border-radius:16px;padding:20px;box-shadow:0 16px 36px #0000003d}.vms-list{display:flex;flex-direction:column;gap:10px;max-height:420px;overflow-y:auto}.vm-list-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#0f172abf;border-radius:10px;border:1px solid rgba(0,212,255,.12);transition:all .2s ease;cursor:pointer}.vm-list-item:hover{border-color:#00d4ff59;transform:translateY(-2px)}.vm-list-name{display:flex;align-items:center;gap:10px;flex:1;color:#e9efff;font-weight:600}.status-dot{width:10px;height:10px;border-radius:50%}.vm-list-info{display:flex;gap:6px;color:#9fb3c8;font-size:.85rem}.info-label{font-weight:600}.info-value{color:#00d4ff}.vm-list-actions{display:flex;gap:6px}.mini-button{width:30px;height:30px;border-radius:8px;border:1px solid rgba(0,212,255,.25);background:#00d4ff1a;color:#00d4ff;display:flex;align-items:center;justify-content:center;font-weight:700;cursor:pointer;transition:all .2s ease}.mini-button:hover:not(:disabled){transform:translateY(-1px);border-color:#00d4ff73}.mini-button:disabled{opacity:.5;cursor:not-allowed}.mini-button.stop{color:#f87171;border-color:#f8717159}.mini-button.suspend{color:#fbbf24;border-color:#fbbf2459}.all-vms-section{padding:0 28px 28px}.section-header h2{margin:0 0 14px;color:#00d4ff;font-size:1.35rem;letter-spacing:-.2px}.no-vms{text-align:center;color:#9fb3c8;padding:44px 20px;background:#11182799;border:1px dashed rgba(0,212,255,.25);border-radius:12px}.vm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px}.vm-card{background:linear-gradient(150deg,#17213af2,#0d1426f2);border:1px solid rgba(0,212,255,.14);border-radius:16px;padding:18px;box-shadow:0 16px 32px #0000003d;transition:all .25s ease;color:#e9efff}.vm-card:hover{transform:translateY(-4px);border-color:#00d4ff59;box-shadow:0 18px 38px #00d4ff24}.vm-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.vm-header h3{margin:0 0 4px;color:#00d4ff;font-size:1.1rem}.vm-node{margin:0;color:#9fb3c8;font-size:.85rem}.status-badge{padding:6px 10px;border-radius:8px;color:#0b1324;font-weight:700;font-size:.75rem}.status-badge.running{background:#10b98140;color:#6ee7b7}.status-badge.stopped{background:#6b72804d;color:#e2e8f0}.status-badge.suspended{background:#f59e0b47;color:#fcd34d}.vm-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.stat{text-align:center}.stat label{display:block;color:#9fb3c8;font-size:.75rem;letter-spacing:.2px}.stat-value{display:block;color:#e9efff;font-size:1rem;font-weight:700}.vm-actions{display:flex;gap:8px;flex-wrap:wrap}.action-button{flex:1;min-width:70px;padding:8px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff0f;color:#e9efff;font-weight:700;font-size:.75rem;cursor:pointer;transition:all .2s ease}.action-button:hover:not(:disabled){border-color:#00d4ff66;transform:translateY(-1px)}.action-button:disabled{opacity:.55;cursor:not-allowed}.action-button.start{border-color:#10b98173;color:#6ee7b7}.action-button.stop{border-color:#ef444473;color:#fca5a5}.action-button.suspend{border-color:#f59e0b73;color:#fcd34d}.action-button.resume{border-color:#3b82f673;color:#93c5fd}.vms-list::-webkit-scrollbar{width:6px}.vms-list::-webkit-scrollbar-track{background:#0f172a59}.vms-list::-webkit-scrollbar-thumb{background:#00d4ff59;border-radius:8px}@media (max-width: 900px){.dashboard-top-bar,.breadcrumb,.dashboard-controls,.summary-section,.main-content-grid,.all-vms-section{padding-left:18px;padding-right:18px}.main-content-grid,.charts-section{grid-template-columns:1fr}}.alerts-manager{padding:0;background:linear-gradient(135deg,#0f172a,#1a2341,#162647);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#e0e7ff;position:relative}.alerts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:20px;padding:24px 28px}.alerts-header h2{margin:0;color:#00d4ff;font-size:1.5rem;font-weight:700;letter-spacing:-.3px}.btn-create-alert{background:linear-gradient(135deg,#00d4ff,#06f);color:#0f172a;border:none;border-radius:8px;padding:12px 20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #00d4ff4d;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.btn-create-alert:hover{background:linear-gradient(135deg,#00e5ff,#0080ff);box-shadow:0 6px 16px #00d4ff66;transform:translateY(-2px)}.create-alert-form{background:linear-gradient(135deg,#1e293bb3,#1e293b66);border:1px solid rgba(0,212,255,.25);border-radius:14px;padding:30px;margin:0 28px 24px;box-shadow:0 12px 40px #0000004d;backdrop-filter:blur(10px);position:relative;overflow:hidden}.create-alert-form form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#e2e8f0;font-size:.95rem;font-weight:500}.form-group input,.form-group select{background:#1e293bcc;border:1px solid rgba(0,212,255,.2);border-radius:6px;padding:10px 12px;color:#e2e8f0;font-size:.95rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#00d4ff80;box-shadow:0 0 0 3px #00d4ff1a}.webhook-input-group{display:flex;gap:10px;align-items:center}.webhook-input-group input{flex:1}.btn-test-webhook{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border:none;border-radius:6px;padding:10px 16px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-test-webhook:hover{background:linear-gradient(135deg,#a78bfa,#8b5cf6);transform:translateY(-2px)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.btn-submit{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;padding:12px 24px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;align-self:flex-end}.btn-submit:hover{background:linear-gradient(135deg,#34d399,#10b981);transform:translateY(-2px)}.message{padding:15px 20px;border-radius:8px;margin-bottom:20px;font-weight:500}.message-success{background:#10b98133;color:#10b981;border:1px solid rgba(16,185,129,.3)}.message-error{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.alerts-list{display:grid;gap:20px;padding:0 28px 32px}.no-alerts{text-align:center;color:#94a3b8;padding:40px 20px;font-size:1.1rem}.alert-card{background:linear-gradient(135deg,#0f172ad9,#1e293b80);border:1px solid rgba(0,212,255,.25);border-radius:14px;padding:26px;transition:all .4s cubic-bezier(.34,1.56,.64,1);backdrop-filter:blur(10px);position:relative;overflow:hidden}.alert-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(0,212,255,.2),transparent)}.alert-card:hover{border-color:#00d4ff73;box-shadow:0 12px 32px #00d4ff33,inset 0 1px #ffffff14;transform:translateY(-6px);background:linear-gradient(135deg,#0f172af2,#1e293bb3)}.alert-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px;flex-wrap:wrap}.alert-title{display:flex;align-items:center;gap:12px}.alert-title h3{color:#e2e8f0;margin:0;font-size:1.3rem}.alert-type{display:inline-block;font-size:1.2rem;opacity:.8}.alert-actions{display:flex;gap:10px;align-items:center}.btn-toggle{background:transparent;border:2px solid rgba(0,212,255,.3);border-radius:50%;width:40px;height:40px;font-size:1.2rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-toggle.enabled{color:#10b981;border-color:#10b98180;background:#10b9811a}.btn-toggle.disabled{color:#ef4444;border-color:#ef444480;background:#ef44441a}.btn-toggle:hover{transform:scale(1.1)}.btn-delete{background:#ef444433;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:8px 12px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s ease;white-space:nowrap}.btn-delete:hover{background:#ef44444d;border-color:#ef444480;transform:translateY(-2px)}.alert-details{display:flex;flex-direction:column;gap:12px;border-top:1px solid rgba(0,212,255,.1);padding-top:20px}.detail-row{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-size:.95rem}.detail-label{color:#94a3b8;font-weight:500;min-width:120px}.detail-value{color:#cbd5e1}.detail-webhook{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;word-break:break-all;opacity:.8}.detail-timestamp{margin-top:8px;padding-top:12px;border-top:1px solid rgba(0,212,255,.1);font-size:.85rem}.detail-timestamp .detail-label,.detail-timestamp .detail-value{color:#64748b}@media (max-width: 768px){.alerts-manager{padding:20px}.alerts-header{flex-direction:column;align-items:stretch}.btn-create-alert{width:100%;text-align:center}.form-row{grid-template-columns:1fr}.alert-header-row{flex-direction:column;align-items:flex-start}.alert-actions{width:100%;justify-content:flex-end}.detail-row{flex-direction:column;align-items:flex-start}}.datacenter-selector{padding:0;background:linear-gradient(135deg,#0f172a,#1a2341,#162647);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#e0e7ff;position:relative}.datacenter-selector.loading{display:flex;align-items:center;justify-content:center;min-height:100vh;color:#fff9;font-size:14px}.dashboard-top-bar{display:flex;justify-content:space-between;align-items:center;padding:18px 28px;background:#0f172ae6;border-bottom:1px solid rgba(0,212,255,.12);gap:20px}.search-area{flex:1;max-width:450px}.search-input{width:100%;padding:11px 16px;background:#1e293b80;border:1px solid rgba(0,212,255,.2);border-radius:8px;color:#e0e7ff;font-size:.95rem;transition:all .3s ease}.search-input:focus{outline:none;border-color:#00d4ff80;background:#1e293bb3;box-shadow:0 0 15px #00d4ff33}.search-input::placeholder{color:#64748b}.top-actions{display:flex;gap:10px}.icon-button{width:38px;height:38px;border:1px solid rgba(0,212,255,.2);background:#1e293b80;border-radius:8px;color:#94a3b8;font-size:1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.icon-button:hover{border-color:#00d4ff66;background:#1e293bb3;color:#00d4ff;transform:translateY(-1px)}.user-info{color:#94a3b8;font-size:.95rem;font-weight:500}.breadcrumb{padding:12px 28px;background:#0f172ab3;border-bottom:1px solid rgba(0,212,255,.08);font-size:.9rem;color:#94a3b8}.breadcrumb span{margin:0 8px}.breadcrumb span.active{color:#00d4ff;font-weight:600}.datacenters-content{padding:24px 28px}.datacenter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:20px}.datacenter-header h3{margin:0;color:#00d4ff;font-size:1.5rem;font-weight:700;letter-spacing:-.3px}.btn-add-datacenter{background:linear-gradient(135deg,#00d4ff,#06f);color:#0f172a;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .4s cubic-bezier(.34,1.56,.64,1);text-transform:uppercase;letter-spacing:.3px}.btn-add-datacenter:hover:not(:disabled){transform:translateY(-4px);box-shadow:0 12px 24px #00d4ff66;background:linear-gradient(135deg,#00e5ff,#0080ff)}.btn-add-datacenter:disabled{opacity:.6;cursor:not-allowed}.datacenter-form{background:linear-gradient(135deg,#1e293bb3,#1e293b66);border:1px solid rgba(0,212,255,.25);border-radius:14px;padding:30px;margin-bottom:24px;backdrop-filter:blur(10px);position:relative;overflow:hidden}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-bottom:12px}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:6px;font-size:.95rem;font-weight:500;color:#e2e8f0}.form-group input[type=text],.form-group input[type=password]{background:#1e293b99;border:1px solid rgba(0,212,255,.2);color:#e0e7ff;padding:10px 12px;border-radius:6px;font-size:.95rem;transition:all .3s ease}.form-group input[type=text]:focus,.form-group input[type=password]:focus{background:#1e293bcc;border-color:#00d4ff80;outline:none;box-shadow:0 0 12px #00d4ff33}.form-group.checkbox{flex-direction:row;align-items:center;margin-top:4px}.form-group.checkbox label{display:flex;align-items:center;gap:8px;margin:0;cursor:pointer}.form-group.checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px}.form-error{color:#fca5a5;font-size:.95rem;margin-bottom:12px;padding:12px 16px;background:#dc26261f;border-radius:6px;border-left:3px solid #dc2626}.form-actions{display:flex;gap:8px}.btn-primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #10b98140}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 6px 16px #10b98159}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.datacenters-list{display:grid;gap:16px}.no-datacenters{text-align:center;color:#94a3b8;font-size:1rem;padding:40px 20px;margin:0}.datacenter-item{background:linear-gradient(135deg,#1e293bcc,#1e293b80);border:1px solid rgba(0,212,255,.25);border-radius:14px;padding:20px;cursor:pointer;transition:all .4s cubic-bezier(.34,1.56,.64,1);display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;backdrop-filter:blur(10px)}.datacenter-item:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(0,212,255,.2),transparent)}.datacenter-item:hover{background:linear-gradient(135deg,#1e293bf2,#1e293bb3);border-color:#00d4ff73;transform:translateY(-4px);box-shadow:0 12px 32px #00d4ff33,inset 0 1px #ffffff14}.datacenter-item.active{background:linear-gradient(135deg,#00d4ff26,#00d4ff0d);border-color:#00d4ff80;box-shadow:0 8px 24px #00d4ff33}.dc-info{flex:1}.dc-name{display:flex;align-items:center;gap:8px;font-weight:600;color:#e0e7ff;margin-bottom:6px;font-size:1.1rem}.badge-active,.badge-disabled{display:inline-block;padding:4px 10px;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase}.badge-active{background:#10b98133;color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}.badge-disabled{background:#dc262633;color:#fca5a5;border:1px solid rgba(220,38,38,.3)}.dc-host{font-size:.9rem;color:#cbd5e1;margin-bottom:4px;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.dc-location{font-size:.85rem;color:#94a3b8;margin-bottom:8px}.dc-sync-status{display:flex;align-items:center;gap:12px;font-size:.85rem;color:#94a3b8;margin-bottom:8px}.status{display:inline-block;padding:4px 10px;border-radius:6px;text-transform:capitalize;font-weight:500;font-size:.8rem}.status.idle{background:#10b98133;color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}.status.syncing{background:#f59e0b33;color:#fcd34d;border:1px solid rgba(245,158,11,.3)}.status.error{background:#dc262633;color:#fca5a5;border:1px solid rgba(220,38,38,.3)}.sync-time{color:#64748b;font-size:.75rem}.dc-error{color:#fca5a5;font-size:.9rem;margin-top:8px;padding:8px 12px;background:#dc26261f;border-radius:6px;border-left:3px solid #dc2626}.btn-remove{background:#dc262633;color:#fca5a5;border:1px solid rgba(220,38,38,.3);width:32px;height:32px;border-radius:8px;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease;flex-shrink:0}.btn-remove:hover{background:#dc26264d;color:#ff6b6b;border-color:#dc262680;transform:translateY(-2px)}@media (max-width: 768px){.form-grid{grid-template-columns:1fr}.datacenter-item{flex-direction:column;align-items:flex-start}.btn-remove{align-self:flex-end}}.animated-background-container{position:relative;width:100%;min-height:100vh;overflow:hidden}.animated-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;background:linear-gradient(135deg,#0f172a,#1a2847,#1e3a5f,#162a47,#0f172a);background-size:400% 400%;animation:bg-shift 15s ease infinite}@keyframes bg-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.orb{position:absolute;border-radius:50%;filter:blur(100px);opacity:.8;animation:float 20s ease-in-out infinite;mix-blend-mode:screen}.orb-1{width:500px;height:500px;background:radial-gradient(circle at 30% 30%,#00d4ff,#06f,#001a4d);top:-200px;left:-200px;animation:float-1 25s ease-in-out infinite;box-shadow:0 0 100px #00d4ff99}.orb-2{width:450px;height:450px;background:radial-gradient(circle at 40% 40%,#ff006e,#8338ec,#3a86ff);top:30%;right:-150px;animation:float-2 30s ease-in-out infinite;box-shadow:0 0 80px #ff006e80}.orb-3{width:480px;height:480px;background:radial-gradient(circle at 50% 50%,#06ffa5,#00d4ff,#06f);bottom:-200px;left:20%;animation:float-3 35s ease-in-out infinite;box-shadow:0 0 100px #06ffa580}.orb-4{width:420px;height:420px;background:radial-gradient(circle at 60% 60%,#ffbe0b,#fb5607,#ff006e);bottom:10%;right:5%;animation:float-4 28s ease-in-out infinite;box-shadow:0 0 80px #ffbe0b66}@keyframes float-1{0%,to{transform:translate(0)}25%{transform:translate(30px,-50px)}50%{transform:translate(-20px,30px)}75%{transform:translate(50px,20px)}}@keyframes float-2{0%,to{transform:translate(0)}25%{transform:translate(-40px,50px)}50%{transform:translate(30px,-30px)}75%{transform:translate(-50px,-20px)}}@keyframes float-3{0%,to{transform:translate(0)}25%{transform:translate(50px,30px)}50%{transform:translate(-30px,-50px)}75%{transform:translate(20px,40px)}}@keyframes float-4{0%,to{transform:translate(0)}25%{transform:translate(-30px,-40px)}50%{transform:translate(40px,20px)}75%{transform:translate(-20px,50px)}}.particle{position:absolute;width:3px;height:3px;background:radial-gradient(circle,#00d4ff,#06f);border-radius:50%;opacity:.8;box-shadow:0 0 15px #00d4ffcc,0 0 30px #0066ff80;animation:drift linear infinite}@keyframes drift{0%{transform:translateY(100vh) translate(0);opacity:0}10%{opacity:.8}90%{opacity:.8}to{transform:translateY(-100vh) translate(100px);opacity:0}}.grid-background{position:absolute;width:100%;height:100%;background-image:linear-gradient(rgba(0,212,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,255,.1) 1px,transparent 1px);background-size:60px 60px;animation:grid-move 20s linear infinite}@keyframes grid-move{0%{transform:translateY(0)}to{transform:translateY(50px)}}.mouse-glow{position:fixed;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(0,212,255,.3) 0%,rgba(0,212,255,.1) 30%,transparent 70%);filter:blur(80px);pointer-events:none;z-index:0;transform:translate(-50%,-50%);transition:all .15s ease-out;box-shadow:0 0 200px #00d4ff66}.content-wrapper{position:relative;z-index:1;width:100%;min-height:100vh}@media (max-width: 768px){.orb{filter:blur(60px)}.orb-1{width:200px;height:200px}.orb-2{width:180px;height:180px}.orb-3{width:200px;height:200px}.orb-4{width:150px;height:150px}.grid-background{background-size:40px 40px}.mouse-glow{width:250px;height:250px}}.App{text-align:center;min-height:100vh;background:transparent;position:relative;z-index:1}.App-header{background:linear-gradient(180deg,#0f172acc,#1a2847b3);padding:24px 0;color:#e0e7ff;border-bottom:1px solid rgba(99,102,241,.2);box-shadow:0 4px 20px #0000004d,inset 0 1px #818cf833;backdrop-filter:blur(20px)}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 40px}.App-header h1{margin:0;font-size:2.2rem;font-weight:700;color:#00d4ff;letter-spacing:-.5px;text-shadow:0 0 12px rgba(0,212,255,.3)}.App-header p{margin:6px 0 0;font-size:.95rem;color:#94a3b8;font-weight:400}.user-section{display:flex;align-items:center;gap:24px}.username{font-size:.95rem;font-weight:500;color:#cbd5e1}.logout-button{background:linear-gradient(135deg,#00d4ff,#06f);color:#0f172a;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .4s cubic-bezier(.34,1.56,.64,1);font-weight:600;box-shadow:0 4px 12px #00d4ff4d;text-transform:uppercase;letter-spacing:.3px}.logout-button:hover{background:linear-gradient(135deg,#00e5ff,#0080ff);transform:translateY(-4px);box-shadow:0 8px 20px #00d4ff66}main{padding:40px;max-width:1400px;margin:0 auto;position:relative;z-index:2}.dashboard{width:100%}@media (max-width: 768px){.header-content{flex-direction:column;gap:15px;padding:0 20px}.App-header h1{font-size:1.8rem}.App-header p{font-size:.85rem}.user-section{width:100%;justify-content:space-between}main{padding:20px}}.main-nav{display:flex;gap:0;background:#0f172acc;border-bottom:1px solid rgba(0,212,255,.2);padding:0;max-width:1200px;margin:0 auto}.nav-tab{flex:1;padding:16px 24px;background:transparent;border:none;color:#94a3b8;font-size:1rem;font-weight:500;cursor:pointer;border-bottom:3px solid transparent;transition:all .3s ease;letter-spacing:.3px}.nav-tab:hover{color:#cbd5e1;background:#00d4ff0d}.nav-tab.active{color:#00d4ff;border-bottom-color:#00d4ff;box-shadow:0 -4px 12px #00d4ff33 inset}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#0f172a,#1a2847,#1e3a5f);color:#e0e7ff}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
