.cdn-dashboard { font-family: var(--cyber-font-body, 'Inter', sans-serif); display: flex; flex-direction: column; gap: 24px; padding: 24px; } .cdn-hero { background: linear-gradient(135deg, rgba(6, 182, 212, 0.15), rgba(34, 211, 238, 0.08)); border: 1px solid rgba(6, 182, 212, 0.2); border-radius: var(--cyber-radius-lg, 16px); padding: 24px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 20px; } .cdn-hero-meta { display: flex; flex-direction: column; gap: 6px; color: var(--cyber-text-secondary); } .cdn-status-badge { display: inline-flex; align-items: center; gap: 8px; padding: 6px 16px; border-radius: 999px; font-size: 13px; font-weight: 600; border: 1px solid currentColor; } .cdn-status-running { color: #22c55e; background: rgba(34, 197, 94, 0.12); } .cdn-status-stopped { color: #ef4444; background: rgba(239, 68, 68, 0.12); } .cdn-metric-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 20px; } .cdn-metric-card { border: 1px solid var(--cyber-border, rgba(255,255,255,0.08)); border-radius: var(--cyber-radius-md, 16px); padding: 20px; background: rgba(15, 23, 42, 0.85); display: flex; flex-direction: column; gap: 4px; } .cdn-metric-value { font-size: 30px; font-weight: 700; color: var(--cyber-text-primary); font-family: var(--cyber-font-mono, 'JetBrains Mono', monospace); } .cdn-metric-label { color: var(--cyber-text-secondary); font-size: 13px; text-transform: uppercase; letter-spacing: 0.08em; } .cdn-metric-sub { margin-top: 6px; color: var(--cyber-text-muted); font-size: 12px; } .cdn-sections-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 24px; } .cdn-section { border: 1px solid var(--cyber-border, rgba(255,255,255,0.08)); border-radius: var(--cyber-radius-md, 16px); padding: 24px; background: rgba(15, 23, 42, 0.8); display: flex; flex-direction: column; gap: 20px; } .cdn-section-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; } .cdn-section-title { display: flex; align-items: center; gap: 10px; font-weight: 600; color: var(--cyber-text-primary); } .cdn-ratio-circle { width: 140px; height: 140px; position: relative; align-self: center; } .cdn-ratio-spark { position: absolute; inset: 0; } .cdn-ratio-value { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-size: 28px; font-weight: 700; color: #06b6d4; } .cdn-progress-stack { display: flex; flex-direction: column; gap: 10px; } .cdn-progress-bar { width: 100%; height: 12px; border-radius: 999px; background: rgba(148, 163, 184, 0.2); overflow: hidden; } .cdn-progress-fill { height: 100%; border-radius: inherit; background: linear-gradient(90deg, #06b6d4, #22d3ee); } .cdn-domain-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; } .cdn-domain-item { display: flex; justify-content: space-between; align-items: center; padding-bottom: 12px; border-bottom: 1px solid rgba(148, 163, 184, 0.12); } .cdn-domain-name { font-weight: 600; color: var(--cyber-text-primary); font-size: 15px; } .cdn-domain-stats { display: flex; gap: 16px; font-size: 13px; color: var(--cyber-text-secondary); font-family: var(--cyber-font-mono, 'JetBrains Mono', monospace); } .cdn-savings-card { text-align: center; padding: 28px; border-radius: var(--cyber-radius-md, 16px); background: linear-gradient(135deg, rgba(34, 197, 94, 0.2), rgba(15, 118, 110, 0.25)); border: 1px solid rgba(34, 197, 94, 0.5); } .cdn-savings-value { font-size: 40px; font-weight: 800; color: #22c55e; font-family: var(--cyber-font-mono, 'JetBrains Mono', monospace); } .cdn-savings-label { margin-top: 8px; color: rgba(255, 255, 255, 0.8); font-size: 13px; } @media (max-width: 960px) { .cdn-sections-grid { grid-template-columns: 1fr; } }