:root { --bg-color: #0d1117; --card-bg: #161b22; --text-primary: #c9d1d9; --text-secondary: #8b949e; --accent-blue: #58a6ff; --accent-green: #238636; --border-color: #30363d; } body { background-color: var(--bg-color); color: var(--text-primary); font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif; margin: 0; padding: 0; } .navbar { background-color: var(--card-bg) !important; border-bottom: 1px solid var(--border-color); } .navbar-brand { font-weight: 700; letter-spacing: -0.5px; color: var(--accent-blue) !important; } .nav-link { color: var(--text-secondary) !important; } .nav-link:hover { color: var(--text-primary) !important; } .card { background-color: var(--card-bg); border: 1px solid var(--border-color); border-radius: 12px; color: var(--text-primary); } .card-title { color: var(--accent-blue); font-weight: 600; } .btn-primary { background-color: var(--accent-blue); border-color: var(--accent-blue); border-radius: 8px; font-weight: 600; } .btn-primary:hover { background-color: #388bfd; border-color: #388bfd; } .badge-online { background-color: var(--accent-green); color: white; padding: 4px 8px; border-radius: 20px; font-size: 0.75rem; text-transform: uppercase; font-weight: 700; box-shadow: 0 0 10px rgba(35, 134, 54, 0.4); } .badge-pending { background-color: #d29922; color: white; padding: 4px 8px; border-radius: 20px; font-size: 0.75rem; font-weight: 700; } .badge-error { background-color: #f85149; color: white; padding: 4px 8px; border-radius: 20px; font-size: 0.75rem; font-weight: 700; } .table { color: var(--text-primary); } .table thead th { border-bottom: 1px solid var(--border-color); color: var(--text-secondary); font-weight: 500; font-size: 0.85rem; } .table td { border-bottom: 1px solid var(--border-color); vertical-align: middle; } .log-entry:hover { background-color: rgba(88, 166, 255, 0.05); cursor: pointer; } .hero-section { padding: 80px 0; background: radial-gradient(circle at top right, rgba(88, 166, 255, 0.1), transparent); } .status-dot { width: 10px; height: 10px; border-radius: 50%; display: inline-block; margin-right: 8px; } .status-dot.online { background-color: var(--accent-green); animation: pulse 2s infinite; } @keyframes pulse { 0% { box-shadow: 0 0 0 0 rgba(35, 134, 54, 0.7); } 70% { box-shadow: 0 0 0 10px rgba(35, 134, 54, 0); } 100% { box-shadow: 0 0 0 0 rgba(35, 134, 54, 0); } } code { background-color: #0d1117; padding: 2px 6px; border-radius: 4px; color: #ff7b72; } pre { background-color: #0d1117; padding: 16px; border-radius: 8px; border: 1px solid var(--border-color); color: var(--text-primary); overflow-x: auto; }