:root{--bg-color:#0f111a;--panel-bg:#1a1d2d;--text-main:#e2e8f0;--text-muted:#94a3b8;--primary:#3b82f6;--primary-hover:#2563eb;--danger:#ef4444;--success:#10b981;--border:#2d3748}*{box-sizing:border-box}body{background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}a{color:var(--primary);text-decoration:none}button{cursor:pointer}.app-container{min-height:100vh;display:flex}.sidebar{background-color:var(--panel-bg);border-right:1px solid var(--border);z-index:100;flex-direction:column;width:250px;transition:width .3s;display:flex;overflow:hidden}.sidebar.collapsed{width:72px}.sidebar.collapsed:hover{width:250px;position:relative}.sidebar-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:72px;padding:1.25rem 1rem;display:flex}.sidebar-logo-container{white-space:nowrap;align-items:center;gap:1rem;display:flex}.sidebar-logo-text{color:#fff;font-size:1.25rem;font-weight:700;transition:opacity .3s}.sidebar.collapsed:not(:hover) .sidebar-logo-text{opacity:0;pointer-events:none}.sidebar-pin-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items:center;padding:.25rem;display:flex}.sidebar-pin-btn:hover{color:#fff;background-color:#ffffff1a}.sidebar.collapsed:not(:hover) .sidebar-pin-btn{opacity:0;pointer-events:none}.sidebar-section-title{color:#64748b;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;margin:1.5rem 0 .5rem;padding:0 1rem;font-size:.7rem;font-weight:700;transition:opacity .3s}.sidebar.collapsed:not(:hover) .sidebar-section-title{opacity:0}.nav-item span{white-space:nowrap;transition:opacity .3s}.sidebar.collapsed:not(:hover) .nav-item span{opacity:0;pointer-events:none}.nav-links{flex-direction:column;gap:.5rem;display:flex}.nav-item{color:var(--text-muted);border-radius:.375rem;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:all .2s;display:flex}.nav-item:hover,.nav-item.active{color:var(--primary);background-color:#3b82f61a}.main-content{flex:1;padding:2rem}.card{background:var(--panel-bg);border:1px solid var(--border);border-radius:.5rem;margin-bottom:1.5rem;padding:1.5rem}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);padding:1rem}.table th{color:var(--text-muted);font-weight:600}.btn{color:#fff;border:none;border-radius:.375rem;padding:.5rem 1rem;font-weight:500;transition:background-color .2s}.btn-primary{background-color:var(--primary)}.btn-primary:hover{background-color:var(--primary-hover)}.btn-danger{background-color:var(--danger)}.input-group{margin-bottom:1rem}.input-group label{color:var(--text-muted);margin-bottom:.5rem;font-size:.875rem;display:block}.input-control{border:1px solid var(--border);background:var(--bg-color);color:#fff;border-radius:.375rem;width:100%;padding:.5rem}.badge{border-radius:9999px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.badge.live{color:var(--success);background:#10b98133}.badge.offline{color:var(--text-muted);background:#94a3b833}.badge.error{color:var(--danger);background:#ef444433}.login-container{justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{width:100%;max-width:400px}
