/*
 * Fich'Antier - Coherence visuelle globale V3
 * Charge apres public/css/fichantier-pro.css.
 * Objectif : appliquer la meme charte que les pages Factures et Tournees
 * a l'ensemble des pages interactives, sans modifier leur logique.
 */

:root {
    --fa-v3-bg: #f4f7fb;
    --fa-v3-surface: #ffffff;
    --fa-v3-ink: #07152c;
    --fa-v3-text: #465b79;
    --fa-v3-muted: #72829a;
    --fa-v3-border: #dbe5f2;
    --fa-v3-border-blue: #c8dcff;
    --fa-v3-blue: #2859df;
    --fa-v3-blue-soft: #edf4ff;
    --fa-v3-navy: #0c172d;
    --fa-v3-orange: #eb5a0a;
    --fa-v3-orange-strong: #d94d00;
    --fa-v3-orange-soft: #fff0e6;
    --fa-v3-green: #11834a;
    --fa-v3-red: #d92d20;
    --fa-v3-radius: 18px;
    --fa-v3-radius-lg: 22px;
    --fa-v3-shadow: 0 10px 28px rgba(23, 45, 79, 0.07);
    --fa-v3-shadow-hover: 0 16px 38px rgba(23, 45, 79, 0.12);
}

/* ============================================================
   1. SOCLE GENERAL
   ============================================================ */
.authenticated-shell {
    background:
        radial-gradient(circle at 84% 0%, rgba(40, 89, 223, 0.045), transparent 28rem),
        var(--fa-v3-bg) !important;
}

.authenticated-shell .fa-content {
    background: transparent !important;
}

.authenticated-shell .container {
    width: min(100%, 1280px) !important;
    padding-top: 30px !important;
}

.authenticated-shell h1,
.authenticated-shell h2,
.authenticated-shell h3,
.authenticated-shell h4 {
    color: var(--fa-v3-ink) !important;
}

.authenticated-shell h1 {
    font-size: clamp(28px, 3.2vw, 36px) !important;
    line-height: 1.05 !important;
    letter-spacing: -0.04em !important;
}

.authenticated-shell h2 {
    letter-spacing: -0.025em !important;
}

.authenticated-shell .muted,
.authenticated-shell .subtitle,
.authenticated-shell .section-subtitle,
.authenticated-shell .help-text,
.authenticated-shell .small-help,
.authenticated-shell .form-help,
.authenticated-shell .company-form-help {
    color: var(--fa-v3-muted) !important;
}

/* ============================================================
   2. EN-TETES / HERO DE TOUTES LES PAGES CONNECTEES
   ============================================================ */
.authenticated-shell :is(
    .fa-page-head,
    .dashboard-hero,
    .worker-hero,
    .worker-header,
    .archives-hero,
    .mail-hero,
    .export-hero,
    .planning-hero,
    .reserve-hero,
    .search-hero,
    .notes-hero,
    .revision-hero,
    .versions-hero,
    .sheet-hero,
    .hero-card,
    .invoice-hero,
    .notifications-hero,
    .onboarding-hero,
    .diagnostic-hero,
    .admin-company-header,
    .company-header,
    .company-hero,
    .billing-hero,
    .sheet-header,
    .hero
) {
    position: relative !important;
    overflow: hidden !important;
    margin-bottom: 22px !important;
    padding: 24px !important;
    border: 1px solid var(--fa-v3-border-blue) !important;
    border-radius: var(--fa-v3-radius-lg) !important;
    background:
        radial-gradient(circle at 96% -30%, rgba(40, 89, 223, 0.11), transparent 22rem),
        linear-gradient(135deg, #ffffff 0%, #f2f7ff 100%) !important;
    box-shadow: 0 10px 30px rgba(40, 89, 223, 0.075) !important;
}

.authenticated-shell :is(
    .fa-page-head,
    .dashboard-hero,
    .worker-hero,
    .worker-header,
    .archives-hero,
    .mail-hero,
    .export-hero,
    .planning-hero,
    .reserve-hero,
    .search-hero,
    .notes-hero,
    .revision-hero,
    .versions-hero,
    .sheet-hero,
    .hero-card,
    .invoice-hero,
    .notifications-hero,
    .onboarding-hero,
    .diagnostic-hero,
    .admin-company-header,
    .company-header,
    .company-hero,
    .billing-hero,
    .sheet-header,
    .hero
)::after {
    content: "";
    position: absolute;
    z-index: 0;
    width: 190px;
    height: 190px;
    right: -76px;
    top: -108px;
    border-radius: 50%;
    background: rgba(40, 89, 223, 0.055);
    pointer-events: none;
}

.authenticated-shell :is(
    .fa-page-head,
    .dashboard-hero,
    .worker-hero,
    .worker-header,
    .archives-hero,
    .mail-hero,
    .export-hero,
    .planning-hero,
    .reserve-hero,
    .search-hero,
    .notes-hero,
    .revision-hero,
    .versions-hero,
    .sheet-hero,
    .hero-card,
    .invoice-hero,
    .notifications-hero,
    .onboarding-hero,
    .diagnostic-hero,
    .admin-company-header,
    .company-header,
    .company-hero,
    .billing-hero,
    .sheet-header,
    .hero
) > * {
    position: relative;
    z-index: 1;
}

.authenticated-shell :is(
    .fa-page-head,
    .dashboard-hero,
    .worker-hero,
    .worker-header,
    .archives-hero,
    .mail-hero,
    .export-hero,
    .planning-hero,
    .reserve-hero,
    .search-hero,
    .notes-hero,
    .revision-hero,
    .versions-hero,
    .sheet-hero,
    .hero-card,
    .invoice-hero,
    .notifications-hero,
    .onboarding-hero,
    .diagnostic-hero,
    .admin-company-header,
    .company-header,
    .company-hero,
    .billing-hero,
    .sheet-header,
    .hero
) h1 {
    margin-top: 0 !important;
    margin-bottom: 8px !important;
}

.authenticated-shell :is(
    .fa-page-head,
    .dashboard-hero,
    .worker-hero,
    .worker-header,
    .archives-hero,
    .mail-hero,
    .export-hero,
    .planning-hero,
    .reserve-hero,
    .search-hero,
    .notes-hero,
    .revision-hero,
    .versions-hero,
    .sheet-hero,
    .hero-card,
    .invoice-hero,
    .notifications-hero,
    .onboarding-hero,
    .diagnostic-hero,
    .admin-company-header,
    .company-header,
    .company-hero,
    .billing-hero,
    .sheet-header,
    .hero
) p {
    color: var(--fa-v3-text) !important;
}

/* Petites pastilles de rubrique deja presentes dans plusieurs pages. */
.authenticated-shell :is(
    .fa-page-kicker,
    .hero-kicker,
    .billing-eyebrow,
    .invoice-eyebrow,
    .hero-pill,
    .version-pill
) {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 30px !important;
    padding: 6px 11px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #e7efff !important;
    color: #2055d4 !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    letter-spacing: 0.035em !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
}

/* ============================================================
   3. CARTES, PANNEAUX ET BLOCS
   ============================================================ */
.authenticated-shell :is(
    .fa-card,
    .card,
    .box,
    .panel,
    .section,
    .dashboard-section,
    .form-section,
    .form-card,
    .section-card,
    .export-card,
    .search-card,
    .mail-card,
    .company-card,
    .company-add-card,
    .invoice-card,
    .invoice-panel,
    .invoice-detail-card,
    .reserve-card,
    .archive-card,
    .result-card,
    .photo-card,
    .note-card,
    .notes-list-card,
    .note-form-card,
    .tracking-card,
    .job-card,
    .diagnostic-card,
    .client-portal-box,
    .client-portal-access,
    .billing-card,
    .offer-card,
    .subscription-panel,
    .usage-panel,
    .priority-card,
    .important-card,
    .danger-card,
    .legal-panel,
    .privacy-summary-card
) {
    border: 1px solid var(--fa-v3-border) !important;
    border-radius: var(--fa-v3-radius) !important;
    background: var(--fa-v3-surface) !important;
    box-shadow: var(--fa-v3-shadow) !important;
}

.authenticated-shell :is(
    .company-item,
    .sheet-card,
    .invoice-card,
    .archive-card,
    .reserve-card,
    .result-card,
    .photo-card,
    .notification-card,
    .event-card,
    .company-validation-card,
    .diagnostic-card
) {
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease !important;
}

.authenticated-shell :is(
    .company-item,
    .sheet-card,
    .invoice-card,
    .archive-card,
    .reserve-card,
    .result-card,
    .photo-card,
    .notification-card,
    .event-card,
    .company-validation-card,
    .diagnostic-card
):hover {
    transform: translateY(-2px) !important;
    border-color: #bdcce0 !important;
    box-shadow: var(--fa-v3-shadow-hover) !important;
}

.authenticated-shell :is(.fa-card-head, .section-header, .section-head, .planning-section-header) {
    border-bottom: 1px solid #edf2f8;
    padding-bottom: 14px;
    margin-bottom: 16px !important;
}

.authenticated-shell :is(.fa-card-head, .section-header, .section-head, .planning-section-header) h2 {
    margin: 0 !important;
    font-size: 19px !important;
}

/* ============================================================
   4. STATISTIQUES ET RESUMES
   ============================================================ */
.authenticated-shell :is(
    .fa-stat,
    .stat-card,
    .stat-box,
    .summary-card,
    .metric-card,
    .dash-metric,
    .usage-stat,
    .tracking-item,
    .invoice-meta-card,
    .subscription-summary-item,
    .diagnostic-mini
) {
    position: relative !important;
    overflow: hidden !important;
    border: 1px solid var(--fa-v3-border) !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 7px 20px rgba(23, 45, 79, 0.055) !important;
}

.authenticated-shell :is(
    .fa-stat,
    .stat-card,
    .stat-box,
    .summary-card,
    .metric-card,
    .dash-metric,
    .usage-stat,
    .tracking-item,
    .invoice-meta-card,
    .subscription-summary-item,
    .diagnostic-mini
)::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #c9dbff 0%, #e4ecfa 100%);
}

.authenticated-shell :is(
    .fa-stat-value,
    .stat-card strong,
    .stat-box strong,
    .summary-card strong,
    .metric-card strong,
    .dash-metric b,
    .usage-stat-value,
    .tracking-value,
    .invoice-meta-value
) {
    color: var(--fa-v3-ink) !important;
    font-weight: 850 !important;
    letter-spacing: -0.035em !important;
    font-variant-numeric: tabular-nums;
}

.authenticated-shell :is(
    .fa-stat-label,
    .stat-card span,
    .stat-box span,
    .summary-card span,
    .metric-card span,
    .dash-metric span,
    .usage-stat-label,
    .invoice-meta-label
) {
    color: var(--fa-v3-text) !important;
    font-weight: 750 !important;
}

/* Variantes semantiques conservees. */
.authenticated-shell :is(.is-success, .success, .good) {
    --fa-v3-state-color: var(--fa-v3-green);
}

.authenticated-shell :is(.is-danger, .danger, .bad) {
    --fa-v3-state-color: var(--fa-v3-red);
}

.authenticated-shell :is(.is-warning, .warning, .warn) {
    --fa-v3-state-color: #b96a09;
}

/* ============================================================
   5. BOUTONS ET ACTIONS
   ============================================================ */
.authenticated-shell :is(
    .btn-main,
    .btn-primary,
    .btn-primary-app,
    .btn-blue,
    .btn-export,
    .action-primary,
    .billing-button-primary,
    .legal-btn-primary,
    .client-portal-button,
    .admin-filter-actions a:not(.secondary),
    .planning-actions a:not(.secondary)
) {
    min-height: 44px !important;
    padding: 10px 18px !important;
    border: 0 !important;
    border-radius: 13px !important;
    background: linear-gradient(135deg, var(--fa-v3-orange) 0%, var(--fa-v3-orange-strong) 100%) !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    box-shadow: 0 9px 22px rgba(235, 90, 10, 0.23) !important;
}

.authenticated-shell :is(
    .btn-main,
    .btn-primary,
    .btn-primary-app,
    .btn-blue,
    .btn-export,
    .action-primary,
    .billing-button-primary,
    .legal-btn-primary,
    .client-portal-button,
    .admin-filter-actions a:not(.secondary),
    .planning-actions a:not(.secondary)
):hover {
    transform: translateY(-1px) !important;
    color: #fff !important;
    box-shadow: 0 12px 28px rgba(235, 90, 10, 0.32) !important;
}

.authenticated-shell :is(
    .btn-secondary,
    .btn-light,
    .btn-light-app,
    .action-secondary,
    .legal-btn-secondary,
    .invoice-btn-back,
    .notification-action-light,
    .planning-actions .secondary,
    .admin-filter-actions .secondary,
    .top-actions a,
    .actions-top a
) {
    min-height: 44px !important;
    padding: 10px 17px !important;
    border: 1px solid #cbd7e7 !important;
    border-radius: 13px !important;
    background: #fff !important;
    color: var(--fa-v3-ink) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    box-shadow: 0 3px 10px rgba(23, 45, 79, 0.045) !important;
}

.authenticated-shell :is(
    .btn-secondary,
    .btn-light,
    .btn-light-app,
    .action-secondary,
    .legal-btn-secondary,
    .invoice-btn-back,
    .notification-action-light,
    .planning-actions .secondary,
    .admin-filter-actions .secondary,
    .top-actions a,
    .actions-top a
):hover {
    transform: translateY(-1px) !important;
    border-color: #aebfd6 !important;
    background: #f8fbff !important;
    color: #1747b8 !important;
}

.authenticated-shell :is(.btn-dark, .fa-btn-dark, .quick-link.is-primary, .invoice-btn-pdf) {
    border-color: var(--fa-v3-navy) !important;
    background: var(--fa-v3-navy) !important;
    color: #fff !important;
    box-shadow: 0 9px 22px rgba(12, 23, 45, 0.17) !important;
}

.authenticated-shell :is(.btn-green, .btn-success, .btn-start, .invoice-btn-paid, .notification-action-success) {
    background: var(--fa-v3-green) !important;
    color: #fff !important;
    border-color: transparent !important;
}

.authenticated-shell :is(.btn-red, .btn-danger, .invoice-btn-cancel, .legal-btn-danger) {
    background: var(--fa-v3-red) !important;
    color: #fff !important;
    border-color: transparent !important;
}

.authenticated-shell :is(
    .hero-actions,
    .fa-page-actions,
    .export-actions,
    .planning-actions,
    .top-actions,
    .actions-top,
    .invoice-actions,
    .invoice-toolbar,
    .form-actions,
    .actions-row,
    .btn-row
) {
    gap: 10px !important;
}

/* ============================================================
   6. FORMULAIRES
   ============================================================ */
.authenticated-shell :is(.form-grid, .company-form-grid, .legal-form-grid, .invoice-form) {
    gap: 16px !important;
}

.authenticated-shell :is(.field, .form-field, .company-field, .filter-field, .legal-field) label {
    display: block;
    margin-bottom: 7px !important;
    color: #263956 !important;
    font-size: 13.5px !important;
    font-weight: 800 !important;
}

.authenticated-shell input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
.authenticated-shell select,
.authenticated-shell textarea {
    min-height: 47px !important;
    border: 1px solid #c8d4e4 !important;
    border-radius: 13px !important;
    background: #fff !important;
    color: var(--fa-v3-ink) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7), 0 2px 8px rgba(23, 45, 79, 0.035) !important;
}

.authenticated-shell input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]):focus,
.authenticated-shell select:focus,
.authenticated-shell textarea:focus {
    border-color: var(--fa-v3-blue) !important;
    box-shadow: 0 0 0 4px rgba(40, 89, 223, 0.12) !important;
}

.authenticated-shell input[type="file"] {
    width: 100%;
    padding: 11px 12px;
    border: 1px dashed #b7c6d9;
    border-radius: 13px;
    background: #f9fbfe;
}

/* ============================================================
   7. TABLEAUX ET LISTES
   ============================================================ */
.authenticated-shell :is(.table-wrap, .table-responsive, .invoice-table-wrap, .mail-table, .info-table) {
    overflow-x: auto !important;
    border: 1px solid var(--fa-v3-border) !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 7px 22px rgba(23, 45, 79, 0.045) !important;
}

.authenticated-shell table {
    background: #fff !important;
}

.authenticated-shell th {
    padding: 13px 15px !important;
    background: #f5f8fc !important;
    color: #5b6f8d !important;
    border-bottom: 1px solid #dfe7f1 !important;
    font-size: 11.5px !important;
    font-weight: 850 !important;
    letter-spacing: 0.055em !important;
}

.authenticated-shell td {
    padding: 14px 15px !important;
    color: #263956 !important;
    border-bottom-color: #edf2f8 !important;
}

.authenticated-shell tbody tr:hover td {
    background: #f9fbff !important;
}

.authenticated-shell :is(.fa-row, .member-row, .group-row, .info-item, .simple-list > *, .result-list > *) {
    border-color: #e1e9f3 !important;
    border-radius: 13px !important;
    background: #f9fbfe !important;
}

/* ============================================================
   8. BADGES, FILTRES ET STATUTS
   ============================================================ */
.authenticated-shell :is(
    .badge,
    .status-badge,
    .status-pill,
    .filter-pill,
    .count-pill,
    .photo-pill,
    .reserve-pill,
    .date-pill,
    .warning-pill,
    .priority-badge,
    .notification-badge,
    .archive-badge,
    .vat-pill,
    .fa-chip
) {
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    line-height: 1 !important;
}

.authenticated-shell .filter-pill {
    min-height: 36px !important;
    padding: 8px 12px !important;
    border: 1px solid #d5dfec !important;
    background: #fff !important;
    color: #405471 !important;
}

.authenticated-shell .filter-pill.active {
    border-color: #c2d4ff !important;
    background: #e9f1ff !important;
    color: #1d50c8 !important;
    box-shadow: 0 4px 12px rgba(40, 89, 223, 0.08) !important;
}

.authenticated-shell :is(.status-ok, .badge-success, .status-terminee, .status-verified) {
    background: #e8f8ef !important;
    color: #08743d !important;
    border-color: #b9e8ce !important;
}

.authenticated-shell :is(.status-bad, .badge-danger, .status-bloquee, .status-rejected) {
    background: #fff0ed !important;
    color: #b42318 !important;
    border-color: #f2c5bd !important;
}

.authenticated-shell :is(.badge-warning, .status-pending, .warning-pill) {
    background: #fff6e8 !important;
    color: #9a5708 !important;
    border-color: #efd8ae !important;
}

/* ============================================================
   9. ETATS VIDES, ALERTES ET BLOCS D'INFORMATION
   ============================================================ */
.authenticated-shell :is(.empty-state, .empty-card, .empty-box, .fa-empty, .company-empty, .empty-photo) {
    padding: 28px 22px !important;
    border: 1px dashed #bfcddd !important;
    border-radius: 16px !important;
    background: #f9fbfe !important;
    color: var(--fa-v3-text) !important;
    box-shadow: none !important;
}

.authenticated-shell :is(.alert-box, .flash, .form-alert, .notice, .error-box, .status-box) {
    border-radius: 14px !important;
    box-shadow: 0 4px 14px rgba(23, 45, 79, 0.045) !important;
}

/* ============================================================
   10. AJUSTEMENTS PAR GRANDES PAGES
   ============================================================ */

/* Tableau de bord */
.authenticated-shell .dash-kpis,
.authenticated-shell .company-summary,
.authenticated-shell .summary-grid,
.authenticated-shell .stats-grid {
    gap: 14px !important;
}

.authenticated-shell .quick-link {
    min-height: 48px !important;
    border: 1px solid #dce5f0 !important;
    border-radius: 13px !important;
    background: #f8faff !important;
}

.authenticated-shell .quick-link:hover {
    border-color: #c3d5fc !important;
    background: #edf4ff !important;
    color: #1d50c8 !important;
}

/* Mon entreprise */
.authenticated-shell .company-item {
    border: 1px solid #dce5f0 !important;
    border-radius: 16px !important;
    background: #fbfcff !important;
}

.authenticated-shell .company-logo,
.authenticated-shell .company-add-icon {
    border-color: #c9d9fb !important;
    background: #edf4ff !important;
    color: #2455cf !important;
}

/* Exports */
.authenticated-shell .export-card {
    padding: 24px !important;
}

.authenticated-shell .export-card h2 {
    margin-top: 0 !important;
}

/* Factures */
.authenticated-shell .invoice-hero {
    border-color: var(--fa-v3-border-blue) !important;
}

.authenticated-shell .invoice-status,
.authenticated-shell .invoice-number {
    font-weight: 850 !important;
}

.authenticated-shell .invoice-totals {
    border-radius: 16px !important;
    background: #f8fbff !important;
    border: 1px solid #dce6f2 !important;
}

/* Planning */
.authenticated-shell .planning-toolbar,
.authenticated-shell .filter-bar,
.authenticated-shell .filters {
    border-radius: 16px !important;
}

.authenticated-shell .planning-column,
.authenticated-shell .planning-day,
.authenticated-shell .calendar-day {
    border-color: #dfe7f1 !important;
    border-radius: 16px !important;
}

/* Notifications */
.authenticated-shell .notification-card {
    border: 1px solid #dfe7f1 !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 7px 22px rgba(23, 45, 79, 0.05) !important;
}

/* Espace ouvrier */
.authenticated-shell .worker-dashboard-page,
.authenticated-shell .worker-page,
.authenticated-shell .worker-sheet {
    width: 100% !important;
    max-width: 1180px !important;
    margin-inline: auto !important;
}

.authenticated-shell .worker-card-actions a,
.authenticated-shell .worker-card-actions button {
    border-radius: 13px !important;
    font-weight: 800 !important;
}

/* Admin */
.authenticated-shell .admin-company-page,
.authenticated-shell .admin-company-show,
.authenticated-shell .diagnostic-page,
.authenticated-shell .audit-page,
.authenticated-shell .ai-page {
    width: 100% !important;
    max-width: 1180px !important;
    margin-inline: auto !important;
}

/* ============================================================
   11. PAGES PUBLIQUES / AUTHENTIFICATION
   ============================================================ */
.public-shell {
    background:
        radial-gradient(circle at 85% 0%, rgba(40, 89, 223, 0.055), transparent 30rem),
        var(--fa-v3-bg) !important;
}

.public-shell :is(.auth-card, .login-card, .register-card, .pricing-card, .legal-panel, .terms-article, .support-form-card) {
    border: 1px solid var(--fa-v3-border) !important;
    border-radius: var(--fa-v3-radius-lg) !important;
    box-shadow: var(--fa-v3-shadow) !important;
}

.public-shell :is(.login-button, .register-button, .btn-pricing, .legal-submit) {
    border-radius: 13px !important;
    background: linear-gradient(135deg, var(--fa-v3-orange), var(--fa-v3-orange-strong)) !important;
    box-shadow: 0 9px 22px rgba(235, 90, 10, 0.23) !important;
}

.public-shell :is(.login-badge, .register-badge, .home-badge, .hero-kicker) {
    border-radius: 999px !important;
    background: #e8f0ff !important;
    color: #2055d4 !important;
}

/* ============================================================
   12. RESPONSIVE
   ============================================================ */
@media (max-width: 900px) {
    .authenticated-shell .container {
        padding-top: 20px !important;
    }

    .authenticated-shell :is(
        .fa-page-head,
        .dashboard-hero,
        .worker-hero,
        .worker-header,
        .archives-hero,
        .mail-hero,
        .export-hero,
        .planning-hero,
        .reserve-hero,
        .search-hero,
        .notes-hero,
        .revision-hero,
        .versions-hero,
        .sheet-hero,
        .hero-card,
        .invoice-hero,
        .notifications-hero,
        .onboarding-hero,
        .diagnostic-hero,
        .admin-company-header,
        .company-header,
        .company-hero,
        .billing-hero,
        .sheet-header,
        .hero
    ) {
        padding: 20px !important;
        border-radius: 18px !important;
    }

    .authenticated-shell h1 {
        font-size: clamp(26px, 7vw, 32px) !important;
    }
}

@media (max-width: 640px) {
    .authenticated-shell :is(
        .hero-actions,
        .fa-page-actions,
        .export-actions,
        .planning-actions,
        .top-actions,
        .actions-top,
        .invoice-actions,
        .form-actions,
        .actions-row,
        .btn-row
    ) {
        width: 100% !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    .authenticated-shell :is(
        .hero-actions,
        .fa-page-actions,
        .export-actions,
        .planning-actions,
        .top-actions,
        .actions-top,
        .invoice-actions,
        .form-actions,
        .actions-row,
        .btn-row
    ) > * {
        width: 100% !important;
    }

    .authenticated-shell :is(.fa-card, .card, .box, .panel, .section, .form-section, .export-card) {
        padding: 18px !important;
    }
}

/* Impression : ne pas ajouter d'effets inutiles aux rapports. */
@media print {
    .authenticated-shell :is(
        .fa-page-head,
        .dashboard-hero,
        .worker-hero,
        .worker-header,
        .archives-hero,
        .mail-hero,
        .export-hero,
        .planning-hero,
        .reserve-hero,
        .search-hero,
        .notes-hero,
        .revision-hero,
        .versions-hero,
        .sheet-hero,
        .hero-card,
        .invoice-hero,
        .notifications-hero,
        .onboarding-hero,
        .diagnostic-hero,
        .admin-company-header,
        .company-header,
        .company-hero,
        .billing-hero,
        .sheet-header,
        .hero
    ),
    .authenticated-shell :is(.fa-card, .card, .box, .panel, .section) {
        box-shadow: none !important;
    }
}
