.cert-page .section-header {
    border-bottom: 1px solid #e8edf3;
    padding-bottom: 10px;
}

.eyebrow {
    letter-spacing: 0.08em;
    font-size: 12px;
    color: #64748b;
}

.chip {
    border-radius: 999px;
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 600;
    background: #eef2f7;
    color: #4b5563;
}

.chip-muted {
    background: #f2f5f9;
    color: #5b6472;
}

.panel {
    border: 1px solid #e6e8f0;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 6px 18px rgba(27, 43, 82, 0.06);
}

.section-title {
    font-weight: 700;
    margin-bottom: 6px;
    color: #0f172a;
}

.legend-wrap .legend-chip {
    border-radius: 10px;
    padding: 6px 10px;
    font-size: 12px;
    background: #f7f9fc;
    border: 1px dashed #e5e7eb;
    color: #475569;
}

.legend-chip.legend-ok {
    background: #e6f6ec;
    border-color: #c2ebd2;
    color: #198754;
}

.legend-chip.legend-error {
    background: #fdeaea;
    border-color: #f6c8c8;
    color: #c0392b;
}

.legend-chip.legend-muted {
    background: #eef2f7;
    border-color: #e2e8f0;
}

.stat-bar {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.stat-card {
    background: #f6f8fb;
    border: 1px solid #e6e8f0;
    border-radius: 12px;
    padding: 10px 12px;
    min-width: 140px;
}

.stat-card .label {
    display: block;
    font-size: 12px;
    color: #6b7280;
    margin-bottom: 2px;
}

.stat-card .value {
    font-weight: 700;
    color: #0f172a;
}

.stat-card.success {
    background: #e6f6ec;
    border-color: #c2ebd2;
}

.toolbar small {
    color: #6b7280;
}

.form-text {
    font-size: 0.9rem;
    color: #6c7687;
}

.table thead th {
    white-space: nowrap;
}

.table tbody td {
    vertical-align: middle;
}

.table-wrapper {
    border-radius: 14px;
}

.table-cert thead th,
.table-cert tbody td {
    white-space: normal;
    word-break: break-word;
    font-size: 0.85rem;
    line-height: 1.2;
    padding: 0.35rem 0.4rem;
}

.table-cert thead th {
    font-weight: 700;
}

.table-cert .badge-check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    margin: 0 auto;
    border-radius: 10px;
    font-weight: 700;
    padding: 4px 6px;
}

.badge-check.ok {
    background: #e6f6ec;
    color: #198754;
    border: 1px solid #c2ebd2;
}

.badge-check.err {
    background: #fdeaea;
    color: #c0392b;
    border: 1px solid #f6c8c8;
}

.table-cert td:nth-child(n+8):nth-child(-n+12) {
    text-align: center;
}

.estado-pill {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    background: #f1f5f9;
    color: #475569;
}

.estado-pill.ok {
    background: #e6f6ec;
    color: #198754;
}

.estado-pill.pendiente {
    background: #fff4e5;
    color: #b55b09;
}

.estado-pill.reprobado {
    background: #fdeaea;
    color: #c0392b;
}