/**
 * Sócrates - Custom Styles
 * Built with Bootstrap 5
 */

/* ============================================
Typography
============================================ */
body {
	font-family: 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* ============================================
Cards
============================================ */
.card {
	border: none;
}

/* ============================================
Buttons
============================================ */
.btn {
	font-weight: 500;
}

.btn-dark {
	background: linear-gradient(135deg, #263238 0%, #37474f 100%);
	border: none;
}

.btn-dark:hover {
	background: linear-gradient(135deg, #37474f 0%, #455a64 100%);
}

/* ============================================
Form Controls
============================================ */
.form-control:focus,
.form-select:focus {
	border-color: #37474f;
	box-shadow: 0 0 0 0.2rem rgba(55, 71, 79, 0.25);
}

/* ============================================
Tables
============================================ */
.table {
	margin-bottom: 0;
}

.table th {
	font-weight: 600;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: #6c757d;
	border-bottom-width: 1px;
}

.table td {
	vertical-align: middle;
}

/* ============================================
Badges
============================================ */
.badge {
	font-weight: 500;
}

/* ============================================
Nav Tabs
============================================ */
.nav-tabs {
	border-bottom: 1px solid #dee2e6;
	padding: 0 1rem;
	gap: 0.25rem;
}

.nav-tabs .nav-link {
	color: #6c757d;
	border: none;
	border-bottom: 2px solid transparent;
	padding: 1rem 1.25rem;
	font-weight: 500;
	transition: all 0.15s ease-in-out;
}

.nav-tabs .nav-link:hover {
	color: #37474f;
	border-bottom-color: #dee2e6;
}

.nav-tabs .nav-link.active {
	color: #263238;
	background-color: transparent;
	border-bottom-color: #263238;
}

/* ============================================
Modals
============================================ */
.modal-header {
	border-bottom: none;
}

.modal-footer {
	border-top: 1px solid #f0f0f0;
}

/* ============================================
Alerts
============================================ */
.alert {
	border: none;
	border-radius: 0.5rem;
}

/* ============================================
Loading States
============================================ */
.htmx-request .htmx-indicator {
	display: inline-block;
}

.htmx-indicator {
	display: none;
}

/* ============================================
Utilities
============================================ */
.text-bg-purple {
	background-color: #7b1fa2 !important;
	color: white !important;
}

/* HTMX loading overlay */
.htmx-request {
	position: relative;
}

.htmx-request::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(255, 255, 255, 0.7);
	display: flex;
	align-items: center;
	justify-content: center;
}
