* { margin: 0; padding: 0; box-sizing: border-box; } :root { --bg-primary: #1a1a1a; --bg-secondary: #2d2d2d; --bg-tertiary: #3d3d3d; --text-primary: #e0e0e0; --text-secondary: #b0b0b0; --accent: #4a9eff; --accent-hover: #5aafff; --success: #4caf50; --border: #404040; } body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; background-color: var(--bg-primary); color: var(--text-primary); line-height: 1.6; min-height: 100vh; display: flex; flex-direction: column; } .container { max-width: 1200px; margin: 0 auto; padding: 2rem; width: 100%; flex-grow: 1; display: flex; flex-direction: column; } header { text-align: center; margin-bottom: 3rem; padding-bottom: 2rem; border-bottom: 2px solid var(--border); } header h1 { font-size: 2.5rem; color: var(--accent); margin-bottom: 0.5rem; font-weight: 700; } .subtitle { color: var(--text-secondary); font-size: 1.1rem; font-weight: 300; } main { flex-grow: 1; } section { margin-bottom: 3rem; } section h2 { font-size: 1.8rem; margin-bottom: 1.5rem; color: var(--text-primary); padding-bottom: 0.5rem; border-bottom: 1px solid var(--border); } .status-card, .info-card { background-color: var(--bg-secondary); border: 1px solid var(--border); border-radius: 8px; padding: 1.5rem; transition: all 0.3s ease; } .status-card:hover, .info-card:hover { background-color: var(--bg-tertiary); border-color: var(--accent); } .status-card { margin-bottom: 1rem; } #status-message { font-size: 1.2rem; margin-bottom: 0.5rem; } #status-message.loading { color: var(--accent); } #status-message.healthy { color: var(--success); } .timestamp { color: var(--text-secondary); font-size: 0.9rem; } .info-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1.5rem; } .info-card { text-align: center; } .info-card h3 { color: var(--accent); margin-bottom: 0.75rem; font-size: 0.95rem; text-transform: uppercase; letter-spacing: 1px; } .info-card p { color: var(--text-primary); font-size: 1.3rem; font-weight: 500; } .features-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1.5rem; } .feature-card { background-color: var(--bg-secondary); border: 1px solid var(--border); border-radius: 8px; padding: 2rem 1.5rem; text-decoration: none; color: inherit; transition: all 0.3s ease; text-align: center; display: flex; flex-direction: column; align-items: center; cursor: pointer; } .feature-card:hover { background-color: var(--bg-tertiary); border-color: var(--accent); transform: translateY(-4px); box-shadow: 0 8px 16px rgba(74, 158, 255, 0.2); } .feature-icon { font-size: 2.5rem; margin-bottom: 1rem; } .feature-card h3 { color: var(--accent); margin-bottom: 0.75rem; font-size: 1.1rem; } .feature-card p { color: var(--text-secondary); font-size: 0.95rem; line-height: 1.5; } footer { text-align: center; padding-top: 2rem; margin-top: auto; border-top: 1px solid var(--border); color: var(--text-secondary); font-size: 0.9rem; } /* Responsive Design */ @media (max-width: 768px) { header h1 { font-size: 2rem; } .container { padding: 1rem; } section h2 { font-size: 1.4rem; } .info-grid { grid-template-columns: 1fr; } .features-grid { grid-template-columns: 1fr; } } /* Animations */ @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } .loading { animation: pulse 1.5s ease-in-out infinite; }