/* Veriko landing — Estado del servicio (/status). Hereda base/shell/.hero/.sec/.caps/.cta de home.css.
   Propio: tarjeta de veredicto en vivo, métricas, gráficas (latencia SVG + barra de estado). Tokens-only. */

/* Ritmo compacto (ancho estándar 1200 del slice — sin estrechar, para no dejar aire horizontal). */
.status-page .hero{padding:44px 0 40px;background:linear-gradient(180deg,var(--color-surface),var(--color-surface-sunken) 85%)}
.status-page .sec{padding:40px 0}
@media(min-width:768px){.status-page .hero{padding:56px 0 44px}.status-page .sec{padding:52px 0}}
@media(min-width:1100px){.status-page .hero{padding:64px 0 52px}.status-page .sec{padding:60px 0}}

/* A11y: eyebrow ≥4.5:1 sobre el hero (el aro de foco del CTA oscuro va global en home.css). */
.status-page .eyebrow{color:var(--color-text-secondary)}

/* Encabezado + botón de refrescar. */
.status-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}
.status-head-copy{min-width:0}
.status-refresh{flex:none;width:42px;height:42px;border-radius:50%;border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,border-color .15s ease}
.status-refresh:hover{background:var(--color-surface-sunken);border-color:var(--color-text-tertiary)}
.status-refresh .ic{width:20px;height:20px}
.status-refresh.is-spinning .ic{animation:st-spin .8s linear infinite}
@keyframes st-spin{to{transform:rotate(360deg)}}

/* Tarjeta de veredicto. */
.status-card{display:flex;gap:18px;align-items:flex-start;padding:24px;border-radius:var(--radius-xl);border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}
.sc-ico{width:52px;height:52px;border-radius:50%;flex:none;display:inline-flex;align-items:center;justify-content:center;background:var(--color-surface-sunken)}
.sc-ico .ic{width:28px;height:28px;color:var(--color-text-tertiary)}
.sc-body{min-width:0}
.sc-label{margin:0;font-size:22px;font-weight:700;line-height:1.1;color:var(--color-text-primary)}
.sc-msg{margin:6px 0 0;font-size:15px;line-height:1.5;color:var(--color-text-secondary)}
/* meta en text-secondary (no tertiary): sobre el fondo danger del estado "Interrumpido" el tertiary
   da 4.33:1 (<4.5); secondary da ≥7:1 en los tres estados. */
.sc-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:12px;font-size:13px;color:var(--color-text-secondary)}
.sc-meta span[hidden]{display:none}

/* Estados (veredicto). */
.status-card[data-state="operational"]{border-color:var(--color-success);background:var(--color-success-light)}
.status-card[data-state="operational"] .sc-ico{background:var(--color-success)}
.status-card[data-state="operational"] .sc-ico .ic{color:#fff}
.status-card[data-state="operational"] .sc-label{color:var(--color-success-text)}
.status-card[data-state="degraded"]{border-color:var(--color-warning);background:var(--color-warning-light)}
.status-card[data-state="degraded"] .sc-ico{background:var(--color-warning)}
.status-card[data-state="degraded"] .sc-ico .ic{color:#fff}
.status-card[data-state="degraded"] .sc-label{color:var(--color-warning-text)}
.status-card[data-state="down"]{border-color:var(--color-danger);background:var(--color-danger-light)}
.status-card[data-state="down"] .sc-ico{background:var(--color-danger)}
.status-card[data-state="down"] .sc-ico .ic{color:#fff}
.status-card[data-state="down"] .sc-label{color:var(--color-danger-text)}
.status-card[data-state="loading"] .sc-ico{animation:st-pulse 1.4s ease-in-out infinite}
.status-card[data-state="loading"] .sc-label{color:var(--color-text-secondary)}
@keyframes st-pulse{0%,100%{opacity:1}50%{opacity:.45}}

/* Monitoreo: encabezado + selector de periodo. */
.status-charts-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}
.st-select-wrap{position:relative}
.st-select{appearance:none;-webkit-appearance:none;font:inherit;font-size:14px;font-weight:600;color:var(--color-text-primary);background:var(--color-surface);border:1px solid var(--color-text-tertiary);border-radius:var(--radius-lg);padding:8px 34px 8px 14px;cursor:pointer}
.st-select:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}
.st-select-wrap::after{content:"";position:absolute;right:13px;top:50%;width:7px;height:7px;border-right:2px solid var(--color-text-tertiary);border-bottom:2px solid var(--color-text-tertiary);transform:translateY(-70%) rotate(45deg);pointer-events:none}

/* Métricas. */
.status-metrics{display:flex;gap:14px;margin-bottom:6px}
.st-metric{flex:1;min-width:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:14px 16px}
.m-label{display:block;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-tertiary)}
.m-value{display:block;margin-top:4px;font-size:24px;font-weight:700;color:var(--color-text-primary);font-variant-numeric:tabular-nums}

/* Gráficas. */
.chart-block{margin-top:20px}
.chart-label{display:block;margin-bottom:10px;font-size:13px;font-weight:600;color:var(--color-text-secondary)}
.chart{width:100%}
.chart-latency{height:110px}
.lat-svg{display:block;width:100%;height:100%}
.lat-area{fill:var(--color-primary-light)}
.lat-line{fill:none;stroke:var(--color-primary);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.chart-verdict{display:flex;gap:2px;height:46px;align-items:stretch}
.vseg{flex:1;min-width:2px;border-radius:2px;background:var(--color-border-strong)}
.vseg-up{background:var(--color-success)}
.vseg-deg{background:var(--color-warning)}
.vseg-down{background:var(--color-danger)}
.vseg-na{background:var(--color-border-strong)}
.chart-empty{margin:0;padding:18px 0;text-align:center;font-size:13.5px;color:var(--color-text-tertiary)}
.chart-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:12px;font-size:12.5px;color:var(--color-text-secondary)}
.lg-item{display:inline-flex;align-items:center;gap:6px}
.lg-dot{width:10px;height:10px;border-radius:3px;flex:none}
.lg-up{background:var(--color-success)}
.lg-deg{background:var(--color-warning)}
.lg-down{background:var(--color-danger)}

@media(prefers-reduced-motion:reduce){
  .status-refresh{transition:none}
  .status-refresh.is-spinning .ic,.status-card[data-state="loading"] .sc-ico{animation:none}
}
