/**
 * GPI — échelle typographique globale (référence : page Ordinateur)
 * Zoom appliqué sur le contenu de page uniquement — pas sur .main-content-modern
 * (évite le chevauchement avec la sidebar admin).
 */

:root {
    --gpi-page-scale: 0.9;
    --gpi-font-base: 0.875rem;
    --gpi-font-title: 1.3rem;
    --gpi-font-subtitle: 0.7rem;
    --gpi-font-table-head: 0.7rem;
    --gpi-font-table-cell: 0.75rem;
    --gpi-font-label: 0.7rem;
    --gpi-font-btn: 0.7rem;
    --gpi-font-badge: 0.65rem;
    --gpi-font-stat-value: 1.1rem;
    --gpi-font-stat-label: 0.55rem;
}

/* Wrappers de page admin / utilisateur — même échelle que ordinateur */
.main-content-modern .equipement-page,
.main-content-modern .equipement-dashboard,
.main-content-modern .acceuil-dashboard,
.main-content-modern .gpi-checkout-view,
.main-content-modern .gpi-sim-dashboard,
.main-content-modern .activites-ticket-page,
.main-content-modern .up-shell,
.main-content-modern > .container-fluid,
.gpi-utilisateur-app > div > main .equipement-page,
.gpi-utilisateur-app > div > main > .container-fluid {
    zoom: var(--gpi-page-scale);
}

@supports not (zoom: 0.9) {
    .main-content-modern .equipement-page,
    .main-content-modern .equipement-dashboard,
    .main-content-modern .acceuil-dashboard,
    .main-content-modern .gpi-checkout-view,
    .main-content-modern .gpi-sim-dashboard,
    .main-content-modern .activites-ticket-page,
    .main-content-modern .up-shell,
    .main-content-modern > .container-fluid,
    .gpi-utilisateur-app > div > main .equipement-page,
    .gpi-utilisateur-app > div > main > .container-fluid {
        zoom: unset;
        transform: scale(var(--gpi-page-scale));
        transform-origin: top left;
        width: calc(100% / var(--gpi-page-scale));
    }
}

/* Zone de contenu admin — espacement sidebar */
@media (min-width: 992px) {
    body.admin-sidebar-expanded .main-content-modern {
        padding: 1.25rem 1.5rem 1.5rem 1.25rem;
    }

    body.admin-sidebar-collapsed .main-content-modern {
        padding: 1.25rem 1.5rem 1.5rem 1.25rem;
    }
}

.main-content-modern {
    font-size: var(--gpi-font-base);
    line-height: 1.45;
    box-sizing: border-box;
}

.gpi-utilisateur-app > div > main {
    font-size: var(--gpi-font-base);
    line-height: 1.45;
}

.main-content-modern h1,
.gpi-utilisateur-app > div > main h1 {
    font-size: var(--gpi-font-title) !important;
}

.main-content-modern h2,
.gpi-utilisateur-app > div > main h2 {
    font-size: 1.15rem !important;
}

.main-content-modern h3,
.gpi-utilisateur-app > div > main h3 {
    font-size: 1rem !important;
}

.main-content-modern .text-muted.small,
.main-content-modern .small,
.gpi-utilisateur-app > div > main .text-muted.small,
.gpi-utilisateur-app > div > main .small {
    font-size: var(--gpi-font-subtitle);
}

.main-content-modern .table th,
.main-content-modern .table-modern th,
.gpi-utilisateur-app > div > main .table th {
    font-size: var(--gpi-font-table-head);
}

.main-content-modern .table td,
.main-content-modern .table-modern td,
.gpi-utilisateur-app > div > main .table td {
    font-size: var(--gpi-font-table-cell);
}

.main-content-modern .form-control,
.main-content-modern .form-select,
.main-content-modern textarea.form-control,
.gpi-utilisateur-app > div > main .form-control,
.gpi-utilisateur-app > div > main .form-select {
    font-size: var(--gpi-font-label);
}

.main-content-modern .eq-filter-label,
.main-content-modern label.small,
.gpi-utilisateur-app > div > main .eq-filter-label {
    font-size: var(--gpi-font-label);
}

.main-content-modern .btn,
.main-content-modern .btn-sm,
.gpi-utilisateur-app > div > main .btn,
.gpi-utilisateur-app > div > main .btn-sm {
    font-size: var(--gpi-font-btn);
}

.main-content-modern .badge-modern,
.main-content-modern .badge:not(.rounded-pill),
.gpi-utilisateur-app > div > main .badge-modern {
    font-size: var(--gpi-font-badge);
}

.main-content-modern .stat-card-mini .stat-value,
.main-content-modern .stat-value,
.gpi-utilisateur-app > div > main .stat-card-mini .stat-value {
    font-size: var(--gpi-font-stat-value);
}

.main-content-modern .stat-card-mini .stat-label,
.main-content-modern .stat-label,
.gpi-utilisateur-app > div > main .stat-card-mini .stat-label {
    font-size: var(--gpi-font-stat-label);
}
