a {
	color: var(--primary-blue, #1e88e5);
	transition: color 0.2s ease;
}

a:hover {
	color: var(--primary-blue-dark, #1565c0);
	text-decoration: none;
}

.bg-success {
	background-color: #8BC34A!important;
}

.text-primary {
	color: var(--primary-blue, #1e88e5)!important;
}

.text-danger {
	color: #D40000!important;
}
a.text-danger:focus,
a.text-danger:hover {
	color: #790000!important;
}

/* Buttons */
.btn {
	font-weight: var(--font-weight-medium, 550);
	font-size: var(--font-size-base, 1.05rem);
	padding: 12px 24px;
	border-radius: 8px;
	transition: all 0.3s ease;
}

.btn-primary {
	background: var(--primary-gradient, linear-gradient(135deg, #1e88e5 0%, #1565c0 100%));
	border: none;
	font-weight: var(--font-weight-semibold, 650);
}

.btn-primary:hover {
	background: linear-gradient(135deg, #1565c0 0%, #0d47a1 100%);
	border: none;
	transform: translateY(-1px);
}

.btn-secondary {
	background-color: #6c757d;
	border: none;
	font-weight: var(--font-weight-semibold, 650);
}

.btn-secondary:hover {
	background-color: #5a6268;
	border: none;
	transform: translateY(-1px);
}

.btn-light {
	background-color: #f8f9fa;
	border: 2px solid var(--border-color, #e9ecef);
	font-weight: var(--font-weight-medium, 550);
}

.btn-light:hover {
	background-color: #e9ecef;
	border-color: #dee2e6;
	transform: translateY(-1px);
}

.btn-danger {
	background: linear-gradient(135deg, #ff6b6b 0%, #ee5a5a 100%);
	border: none;
	font-weight: var(--font-weight-semibold, 650);
}

.btn-danger:hover {
	background: linear-gradient(135deg, #ee5a5a 0%, #dc3545 100%);
	border: none;
	transform: translateY(-1px);
}

.btn-success {
	background: linear-gradient(135deg, #51cf66 0%, #40c057 100%);
	border: none;
	font-weight: var(--font-weight-semibold, 650);
}

.btn-success:hover {
	background: linear-gradient(135deg, #40c057 0%, #37b24d 100%);
	border: none;
	transform: translateY(-1px);
}

.btn-sm {
	padding: 8px 16px;
	font-size: var(--font-size-sm, 0.925rem);
}

.btn-lg {
	padding: 16px 32px;
	font-size: var(--font-size-lg, 1.2rem);
}

.btn-light.focus, .btn-light:focus {
	box-shadow: none;
}

.btn.focus, .btn:focus {
	box-shadow: none;
}

/* Form */
.form-control {
	font-size: var(--font-size-base, 1.05rem);
	font-weight: var(--font-weight-normal, 450);
	padding: 12px 16px;
	border: 2px solid var(--border-color, #e9ecef);
	border-radius: 8px;
	transition: all 0.2s ease;
}

.form-control:focus {
	border-color: var(--primary-blue, #1e88e5);
}

label {
	font-weight: var(--font-weight-semibold, 650);
	color: var(--text-primary, #1a1a2e);
	margin-bottom: 8px;
	font-size: var(--font-size-base, 1.05rem);
}

/* Cards */
.card {
	border: none;
	border-radius: 12px;
}

.card:hover {
}

.card-header {
	background: transparent;
	border-bottom: 1px solid var(--border-color, #e9ecef);
	font-weight: var(--font-weight-bold, 750);
	font-size: var(--font-size-lg, 1.2rem);
}

/* Tables */
.table-striped tbody tr:nth-of-type(odd) {
	background-color: var(--bg-warm, #faf8f5);
}

.table-striped tbody tr:hover {
	background-color: var(--bg-warm-card, #f7f5f2);
}

.table thead th {
	font-size: var(--font-size-xs, 0.8rem);
	text-transform: uppercase!important;
	font-weight: var(--font-weight-bold, 750);
	color: var(--text-secondary, #6c757d);
	letter-spacing: 0.8px;
	border-bottom: 2px solid var(--border-color, #e9ecef);
}

.table td {
	font-size: var(--font-size-base, 1.05rem);
	font-weight: var(--font-weight-normal, 450);
	vertical-align: middle;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
	color: var(--text-primary, #1a1a2e);
	font-weight: var(--font-weight-bold, 750);
	letter-spacing: -0.02em;
}

h1 { font-size: var(--font-size-3xl, 2.25rem); }
h2 { font-size: var(--font-size-2xl, 1.75rem); }
h3 { font-size: var(--font-size-xl, 1.4rem); }
h4 { font-size: var(--font-size-lg, 1.2rem); }
h5 { font-size: var(--font-size-base, 1.05rem); }
h6 { font-size: var(--font-size-sm, 0.925rem); }

/* Badge */
.badge {
	font-size: var(--font-size-xs, 0.8rem);
	font-weight: var(--font-weight-semibold, 650);
	padding: 6px 12px;
	border-radius: 6px;
}

.badge-primary {
	background: var(--primary-gradient, linear-gradient(135deg, #1e88e5 0%, #1565c0 100%));
}
