/* Keep table headers using the default theme styles */

:root {
	--brand-corporate-blue: #0f95cb;
	--brand-corporate-blue-rgb: 15, 149, 203;
	--brand-corporate-blue-dark: #0b79a5;
	--brand-corporate-blue-soft: #e7f5fb;
}

.navbar.bg-dark {
	background-color: var(--brand-corporate-blue) !important;
}

.btn-primary {
	--bs-btn-bg: var(--brand-corporate-blue);
	--bs-btn-border-color: var(--brand-corporate-blue);
	--bs-btn-hover-bg: var(--brand-corporate-blue-dark);
	--bs-btn-hover-border-color: var(--brand-corporate-blue-dark);
	--bs-btn-active-bg: var(--brand-corporate-blue-dark);
	--bs-btn-active-border-color: var(--brand-corporate-blue-dark);
	--bs-btn-disabled-bg: var(--brand-corporate-blue);
	--bs-btn-disabled-border-color: var(--brand-corporate-blue);
}

.bg-primary {
	background-color: var(--brand-corporate-blue) !important;
}

.text-primary,
.link-primary {
	color: var(--brand-corporate-blue) !important;
}

.badge.bg-primary {
	background-color: var(--brand-corporate-blue) !important;
}

.form-control:focus,
.form-select:focus {
	border-color: rgba(var(--brand-corporate-blue-rgb), .45);
	box-shadow: 0 0 0 .2rem rgba(var(--brand-corporate-blue-rgb), .15);
}

.page-header-light {
	border-top: 3px solid rgba(var(--brand-corporate-blue-rgb), .25);
}

/* ── Estilos para tablas de desempeño y badges de estado ─────────────── */

.tabla-desempeno-fija {
	table-layout: fixed;
	width: 100%;
}

.tabla-desempeno-fija th,
.tabla-desempeno-fija td {
	vertical-align: middle;
}

.tabla-desempeno-fija thead th {
	font-size: 0.78rem;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.status-stack {
	display: flex;
	align-items: center;
}

.status-chip {
	font-size: 0.75rem;
	letter-spacing: 0.01em;
	padding: 0.4rem 0.55rem;
	background: #fff !important;
	border: 1px solid currentColor !important;
	font-weight: 600;
}

.status-chip.bg-primary { color: #0d6efd !important; }
.status-chip.bg-secondary { color: #6c757d !important; }
.status-chip.bg-success { color: #198754 !important; }
.status-chip.bg-danger { color: #dc3545 !important; }
.status-chip.bg-warning,
.status-chip.bg-warning.text-dark { color: #fd7e14 !important; }

.status-chip .click-hint {
	opacity: 0.85;
	margin-left: 0.25rem;
	font-size: 0.72rem;
}

.status-badge-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	text-decoration: none;
}

.status-badge-link:hover .status-chip,
.status-badge-link:focus .status-chip {
	filter: brightness(0.95);
	box-shadow: 0 0 0 0.15rem rgba(13, 110, 253, 0.2);
}

.resumen-fase-item {
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 0.5rem;
	padding: 0.75rem 0.9rem;
	background: #fff;
}

.panel-periodo {
	position: sticky;
	top: 1rem;
}

/* ── Estilos de evaluación 360 y alertas enriquecidas ────────────────── */

.eval360-table {
	table-layout: fixed;
	width: 100%;
}

.eval360-table th,
.eval360-table td {
	vertical-align: top;
}

.eval360-table .radio-col {
	text-align: center;
	vertical-align: middle;
}

.eval360-table .form-check-input {
	float: none;
	margin: 0;
}

.eval360-competencia {
	font-weight: 600;
}

.eval360-ayuda {
	color: var(--bs-secondary-color);
}

.eval360-group-row td {
	background: #f5f8fb;
	border-top: 2px solid #d7e3ef;
}

.eval360-group-row:first-child td {
	border-top-width: 1px;
}

.eval360-comportamiento-cell {
	padding-left: 1rem;
}

.alert-rich {
	display: flex;
	align-items: stretch;
	padding: 0;
	border-width: 1px;
	border-style: solid;
	border-radius: 0.5rem;
	overflow: hidden;
}

.alert-rich .alert-rich-icon {
	width: 54px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 1rem;
	flex-shrink: 0;
}

.alert-rich .alert-rich-content {
	padding: 0.85rem 1rem;
	flex: 1;
}

.alert-rich .btn-close {
	align-self: center;
	margin: 0 0.75rem 0 0;
	opacity: 0.8;
}

.alert-rich-warning {
	border-color: #f2b999;
	background: #fff5f0;
	color: #a14f1f;
}

.alert-rich-warning .alert-rich-icon {
	background: #f08a45;
}

.alert-rich-danger {
	border-color: #f1a6ac;
	background: #fff1f2;
	color: #9f2430;
}

.alert-rich-danger .alert-rich-icon {
	background: #e3525f;
}

.alert-rich-success {
	border-color: #9dd7bb;
	background: #effaf4;
	color: #146c43;
}

.alert-rich-success .alert-rich-icon {
	background: #27a06a;
}

.eval360-side-panel {
	position: sticky;
	top: 1rem;
}
