/* ComoVa — Apps y plataformas + IA y nube (features/comova/sources/plataformas.php).
   Reuses the core .cv-uptime / .cv-bars / .cv-chip look; only the extras live here. */

.cv-pf-summary p { margin: 0 0 1rem; line-height: 1.55; }

/* Hero answer ("¿Se cayó …? No: …"). */
.cv-pf-hero {
	margin: 0 0 1rem;
	padding: 14px 16px;
	border: 1px solid var(--cv-border);
	border-left: 4px solid var(--cv-state, var(--cv-border));
	border-radius: var(--cv-radius);
	background: var(--cv-surface);
}
.cv-pf-hero.cv-pf-up { --cv-state: var(--cv-normal, #16a34a); }
.cv-pf-hero.cv-pf-degraded { --cv-state: var(--cv-retraso, #d97706); }
.cv-pf-hero.cv-pf-partial { --cv-state: var(--cv-servicio-parcial, #ea580c); }
.cv-pf-hero.cv-pf-down { --cv-state: var(--cv-sin-servicio, #dc2626); }
.cv-pf-hero p { margin: 0 0 .4rem; line-height: 1.55; overflow-wrap: anywhere; }
.cv-pf-q { font-size: 1.08rem; }
.cv-pf-q .cv-chip { vertical-align: 2px; margin-right: 4px; }
.cv-pf-more { font-size: .9rem; }
.cv-pf-upd { font-size: .8rem; margin: 0 !important; }

/* Grid of cards. */
.cv-pf-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr));
	gap: 10px;
	margin: 0 0 1.25rem;
}
.cv-pf-card {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
	padding: 12px 14px;
	border: 1px solid var(--cv-border);
	border-radius: var(--cv-radius);
	background: var(--cv-surface);
}
.cv-pf-card.cv-pf-down,
.cv-pf-card.cv-pf-partial,
.cv-pf-card.cv-pf-degraded { background: var(--cv-surface-2); }
.cv-pf-card-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
.cv-pf-name { font-weight: 800; color: var(--cv-text); text-decoration: none; overflow-wrap: anywhere; }
a.cv-pf-name:hover { text-decoration: underline; }
.cv-pf-card .cv-chip { font-size: .72rem; }
.cv-pf-line { margin: 0; font-size: .82rem; line-height: 1.4; color: var(--cv-muted); overflow-wrap: anywhere; }
.cv-pf-more-link { margin-top: auto; font-size: .8rem; font-weight: 600; }

/* Tables. */
.cv-pf-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 0 0 .75rem; }
.cv-pf-table { width: 100%; border-collapse: collapse; font-size: .9rem; background: var(--cv-surface); }
.cv-pf-table th,
.cv-pf-table td { padding: .45rem .55rem; border-bottom: 1px solid var(--cv-border); text-align: left; vertical-align: top; }
.cv-pf-table th { font-size: .75rem; text-transform: uppercase; letter-spacing: .04em; color: var(--cv-muted); background: var(--cv-surface-2); white-space: nowrap; }
.cv-pf-table td:first-child { font-weight: 600; white-space: nowrap; }
.cv-pf-table td:nth-child(2) { white-space: nowrap; }
.cv-pf-table td:nth-child(3) { overflow-wrap: anywhere; }
.cv-pf-table .cv-muted { display: block; font-size: .8rem; margin-top: 2px; }
.cv-pf-inc td:first-child { font-weight: 400; font-variant-numeric: tabular-nums; }
.cv-pf-inc td:nth-child(3) { white-space: nowrap; }
.cv-pf-inc td:nth-child(4) { min-width: 220px; }
.cv-pf-table tr.is-open td { font-weight: 600; }
.cv-pf-h { font-size: 1rem; margin: 1rem 0 .4rem; }
.cv-pf-active { margin: 0 0 .75rem 1.1rem; padding: 0; }
.cv-pf-active li { margin: 0 0 .3rem; overflow-wrap: anywhere; }

/* Lists with bars. */
.cv-pf-row .cv-uptime-head { min-width: 0; }
.cv-pf-row .cv-uptime-name { overflow-wrap: anywhere; font-weight: 700; }
.cv-pf-meta { margin: -2px 0 8px; font-size: .8rem; color: var(--cv-muted); line-height: 1.45; overflow-wrap: anywhere; }
.cv-pf-history > p:first-child { line-height: 1.55; }
.cv-pf-bars .cv-bar { cursor: default; }
.cv-pf-bars .cv-bar:hover { transform: none; }

@media (max-width: 480px) {
	.cv-pf-bars { height: 28px; gap: 1px; }
	.cv-pf-bars .cv-bar { min-width: 1px; border-radius: 2px; }
	.cv-pf-q { font-size: 1rem; }
}
