/* GestClub FFTIR — Styles personnalisés */

:root {
    --gc-red:    #dc3545;
    --gc-dark:   #212529;
    --gc-light:  #f8f9fa;
}

body {
    font-size: 0.925rem;
    background-color: #f0f2f5;
}

/* Navbar */
.navbar-brand {
    letter-spacing: 0.5px;
}

/* Cards */
.card {
    border-radius: 0.6rem;
}

/* Table */
.table thead th {
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.table tbody tr:hover {
    background-color: rgba(0, 0, 0, 0.03);
}

/* Statut badges */
.badge {
    font-size: 0.78rem;
    padding: 0.35em 0.65em;
    letter-spacing: 0.03em;
}

/* Stats cards */
.card-body .fs-2 {
    font-size: 2rem !important;
    line-height: 1.2;
}

/* Login */
.login-box .card {
    border-radius: 1rem;
}

/* Webcam */
#webcam-video,
#photo-preview {
    border-radius: 0.4rem;
    background: #000;
}

/* Responsive table scroll */
.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Nav tabs */
.nav-tabs .nav-link.active {
    font-weight: 600;
}

/* Form labels */
.form-label.fw-semibold {
    color: #344054;
}

/* Alert compact */
.alert {
    border-radius: 0.5rem;
}

/* Dropdown items icon alignment */
.dropdown-item i {
    width: 18px;
    text-align: center;
}

/* Status row colors already handled by Bootstrap table-danger/warning */
.table-danger td,
.table-warning td {
    border-bottom-color: rgba(0,0,0,0.06) !important;
}

/* Pagination / back buttons */
a.btn {
    white-space: nowrap;
}

/* Mobile adjustments */
@media (max-width: 768px) {
    h1.h3 { font-size: 1.15rem; }
    .table { font-size: 0.82rem; }
    .badge { font-size: 0.7rem; }
}
