/*
 * GA1 Status (pagina publica /status si consola): pe tokenurile GA1 Design System v2 (ga1-ds.css).
 * Verde = functioneaza, galben = degradat, rosu = indisponibil, gri = necunoscut / fara date.
 */
.st-page { min-height: 100vh; background: var(--ds-canvas); color: var(--ds-text); font-family: var(--ds-font-sans); }
.st-wrap { max-width: 960px; margin: 0 auto; padding: 24px 16px 48px; }
.st-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 24px; }
.st-head a { display: inline-flex; align-items: center; gap: 10px; color: inherit; text-decoration: none; }
.st-head img { height: 32px; width: auto; }
.st-head-title { font-size: 18px; font-weight: 700; }
.st-head-meta { color: var(--ds-text-muted); font-size: 13px; }

.st-banner { display: flex; align-items: center; gap: 12px; padding: 18px 20px; border-radius: var(--ds-radius-lg, 12px); font-size: 18px; font-weight: 700; margin-bottom: 24px; border: 1px solid transparent; }
.st-banner-operational { background: var(--ds-success-subtle); color: var(--ds-success-text); border-color: color-mix(in srgb, var(--ds-success) 30%, transparent); }
.st-banner-degraded { background: var(--ds-warning-subtle); color: var(--ds-warning-text); border-color: color-mix(in srgb, var(--ds-warning) 30%, transparent); }
.st-banner-outage { background: var(--ds-danger-subtle); color: var(--ds-danger-text); border-color: color-mix(in srgb, var(--ds-danger) 30%, transparent); }
.st-banner-unknown { background: var(--ds-surface-sunken); color: var(--ds-text-secondary); border-color: var(--ds-border); }

.st-dot { flex: none; display: inline-block; width: 10px; height: 10px; border-radius: 50%; background: var(--ds-neutral-400, #98a2b3); }
.st-dot-up, .st-dot-operational { background: var(--ds-success); }
.st-dot-degraded { background: #d99a06; }
.st-dot-down, .st-dot-outage { background: var(--ds-danger); }

.st-card { background: var(--ds-surface); border: 1px solid var(--ds-border); border-radius: var(--ds-radius-lg, 12px); margin-bottom: 20px; overflow: hidden; }
.st-card-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px; border-bottom: 1px solid var(--ds-border); }
.st-card-head h2 { margin: 0; font-size: 16px; font-weight: 700; }
.st-component { padding: 14px 18px; border-bottom: 1px solid var(--ds-border); }
.st-component:last-child { border-bottom: 0; }
.st-component-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.st-component-name { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; }
.st-component-meta { color: var(--ds-text-muted); font-size: 13px; display: inline-flex; gap: 12px; align-items: center; }
.st-state { font-size: 13px; font-weight: 600; }
.st-state-up { color: var(--ds-success-text); }
.st-state-degraded { color: var(--ds-warning-text); }
.st-state-down { color: var(--ds-danger-text); }
.st-state-unknown { color: var(--ds-text-muted); }

.st-bars { display: flex; gap: 2px; margin-top: 10px; height: 28px; }
.st-bar { flex: 1 1 0; min-width: 2px; border-radius: 2px; background: var(--ds-neutral-300, #cdd5df); }
.st-bar-ok { background: var(--ds-success); }
.st-bar-minor { background: #e5a50a; }
.st-bar-major { background: var(--ds-danger); }
.st-bars-legend { display: flex; justify-content: space-between; color: var(--ds-text-muted); font-size: 12px; margin-top: 4px; }
@media (max-width: 640px) {
    /* pe telefon: ultimele 30 de zile */
    .st-bars .st-bar:nth-child(-n+60) { display: none; }
    .st-bars-legend .st-legend-long { display: none; }
}
@media (min-width: 641px) { .st-bars-legend .st-legend-short { display: none; } }

.st-incident { padding: 16px 18px; border-bottom: 1px solid var(--ds-border); }
.st-incident:last-child { border-bottom: 0; }
.st-incident h3 { margin: 0 0 4px; font-size: 15px; font-weight: 700; display: flex; align-items: center; gap: 8px; }
.st-incident-meta { color: var(--ds-text-muted); font-size: 13px; margin: 0 0 8px; }
.st-incident p { margin: 0 0 6px; }
.st-updates { list-style: none; margin: 8px 0 0; padding: 0 0 0 14px; border-left: 2px solid var(--ds-border); }
.st-updates li { margin: 0 0 6px; font-size: 14px; }
.st-updates time, .st-updates strong { color: var(--ds-text-secondary); font-size: 13px; }
.st-empty { padding: 16px 18px; color: var(--ds-text-muted); margin: 0; }
.st-pill { display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: 12px; font-weight: 700; }
.st-pill-major { background: var(--ds-danger-subtle); color: var(--ds-danger-text); }
.st-pill-minor { background: var(--ds-warning-subtle); color: var(--ds-warning-text); }
.st-foot { color: var(--ds-text-muted); font-size: 13px; text-align: center; margin-top: 24px; }
.st-foot a { color: inherit; }

/* Consola */
.st-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.st-table th, .st-table td { text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--ds-border); vertical-align: top; }
.st-table th { color: var(--ds-text-secondary); font-weight: 600; font-size: 13px; }
.st-table-wrap { overflow-x: auto; }
.st-mono { font-family: var(--ds-font-mono, ui-monospace, monospace); font-size: 12px; word-break: break-word; }
