/* =============================================================================
   JAOS Admin UI polish — chargé EN DERNIER (après jaos-filament-theme,
   ja-compact-desktop). Corrige scrollbars violettes, séparation sidebar,
   cadre table factures.
   ============================================================================= */

/* ── 1. Sidebar nav : scroll OK, thumb invisible ──
   Élément scrollable Filament : .fi-sidebar-nav { overflow: hidden auto }
   Couleur violette : jaos-filament-theme.css ::-webkit-scrollbar-thumb
   (color-mix avec --jaos-primary #7c4dff) */
.fi-sidebar-nav {
    scrollbar-width: none;
    -ms-overflow-style: none;
    scrollbar-gutter: auto;
}

.fi-sidebar-nav::-webkit-scrollbar {
    width: 0;
    height: 0;
    display: none;
}

/* ── 2. Scroll principal admin : .fi-main-ctn (Atelier layout.css)
   Barre invisible ; html/body ne scrollent plus. */
html.fi .fi-main-ctn {
    scrollbar-width: none !important;
    -ms-overflow-style: none;
}

html.fi .fi-main-ctn::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
}

/* ── 3. Sidebar ↔ contenu : fond continu, sans trait vertical ──
   Source : jaos-filament-theme.css + admin-theme.css .fi-sidebar border-right */
html.fi .fi-sidebar {
    border-right: none !important;
    box-shadow: none !important;
}

html.fi .fi-main,
html.fi .fi-main-ctn {
    border-left: none !important;
    box-shadow: none !important;
}

/* ── 4. Listes factures / devis : supprimer card wrapper (.fi-ta + .fi-ta-ctn) ──
   Sources : jaos-filament-theme.css .fi-ta + Filament .fi-ta-ctn ring/shadow
   + admin-theme.css .fi-ta + ja-compact-desktop border-radius 14px */
.ja-invoice-list-page .fi-ta,
.ja-invoice-list-page .fi-ta-ctn,
.ja-invoice-list-page .fi-ta-content-ctn,
.ja-invoice-list-page .fi-ta-header-ctn,
.ja-invoice-list-page .fi-ta-header,
.ja-invoice-list-page .fi-ta-header-toolbar,
.ja-invoice-list-page .fi-ta-content,
.ja-invoice-list-page .fi-ta-footer-ctn,
.ja-invoice-list-page .fi-ta-pagination,
.ja-invoice-list-page .ja-premium-desktop-table > .fi-ta-ctn,
.ja-quote-list-page .fi-ta,
.ja-quote-list-page .fi-ta-ctn,
.ja-quote-list-page .fi-ta-content-ctn,
.ja-quote-list-page .fi-ta-header-ctn,
.ja-quote-list-page .fi-ta-header,
.ja-quote-list-page .fi-ta-header-toolbar,
.ja-quote-list-page .fi-ta-content,
.ja-quote-list-page .fi-ta-footer-ctn,
.ja-quote-list-page .fi-ta-pagination,
.ja-quote-list-page .ja-premium-desktop-table > .fi-ta-ctn {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
    backdrop-filter: none !important;
    --tw-shadow: 0 0 #0000 !important;
    --tw-ring-shadow: 0 0 #0000 !important;
    --tw-ring-offset-shadow: 0 0 #0000 !important;
}

.ja-invoice-list-page .fi-ta-header-toolbar,
.ja-quote-list-page .fi-ta-header-toolbar {
    border-bottom: 1px solid color-mix(in srgb, var(--jaos-border) 40%, transparent) !important;
    padding-inline: 0 !important;
    margin-bottom: 0.25rem;
}

.ja-invoice-list-page .ja-premium-table .fi-ta-header,
.ja-quote-list-page .ja-premium-table .fi-ta-header {
    background: transparent !important;
    border-bottom: none !important;
}

.ja-invoice-list-page .ja-premium-crud,
.ja-invoice-list-page .ja-premium-crud__main,
.ja-invoice-list-page .ja-premium-desktop-table,
.ja-quote-list-page .ja-premium-crud,
.ja-quote-list-page .ja-premium-crud__main,
.ja-quote-list-page .ja-premium-desktop-table {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
}

.ja-invoice-list-page .ja-premium-desktop-table {
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
}

/* Scrollbar table horizontale factures : neutre */
.ja-invoice-list-page .ja-premium-desktop-table {
    scrollbar-width: thin;
    scrollbar-color: rgba(148, 163, 184, 0.22) transparent;
}

.ja-invoice-list-page .ja-premium-desktop-table::-webkit-scrollbar {
    height: 6px;
}

.ja-invoice-list-page .ja-premium-desktop-table::-webkit-scrollbar-thumb {
    background: rgba(148, 163, 184, 0.22) !important;
    border-radius: 999px;
}

/* Devis desktop : pas de scroll horizontal ni rail décoratif */
.ja-quote-list-page .ja-premium-desktop-table {
    overflow-x: hidden;
    overflow-y: visible;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.ja-quote-list-page .ja-premium-desktop-table::-webkit-scrollbar {
    width: 0;
    height: 0;
    display: none;
}

.ja-quote-list-page .ja-premium-table .fi-ta-table {
    table-layout: fixed;
    width: 100%;
    min-width: 0;
    max-width: 100%;
}

.ja-quote-list-page .fi-ta-content,
.ja-quote-list-page .fi-ta-ctn,
.ja-quote-list-page .fi-ta {
    overflow-x: hidden !important;
    max-width: 100%;
}

/* Lignes : séparateurs horizontaux conservés (ja-premium-crud.css) */

@media (max-width: 1440px) {
    .ja-invoice-list-page .fi-ta,
    .ja-invoice-list-page .fi-ta-ctn,
    .ja-quote-list-page .fi-ta,
    .ja-quote-list-page .fi-ta-ctn {
        border-radius: 0 !important;
    }
}

@media (max-width: 1023px) {
    .ja-invoice-list-page .fi-ta-ctn,
    .ja-invoice-list-page .fi-ta-header-toolbar,
    .ja-quote-list-page .fi-ta-ctn,
    .ja-quote-list-page .fi-ta-header-toolbar {
        padding-inline: 0 !important;
    }

    /* Mobile / tablette devis : cartes ; si table visible, scroll discret seulement si besoin */
    .ja-quote-list-page .ja-premium-desktop-table {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        scrollbar-color: rgba(148, 163, 184, 0.2) transparent;
    }

    .ja-quote-list-page .ja-premium-desktop-table::-webkit-scrollbar {
        display: block;
        height: 4px;
        width: 0;
    }

    .ja-quote-list-page .ja-premium-desktop-table::-webkit-scrollbar-thumb {
        background: rgba(148, 163, 184, 0.2) !important;
        border-radius: 999px;
    }
}

/* =============================================================================
   Selectable list pattern — Phase 1 Factures (extensible)
   Ligne = ouvrir | Checkbox = sélectionner | Toolbar = actions
   ============================================================================= */

.ja-selectable-list .ja-selectable-list__open-action,
.ja-selectable-list .fi-ta-actions .hidden.ja-selectable-list__open-action {
    display: none !important;
}

/* Masquer UNIQUEMENT la colonne Actions des lignes (pas la toolbar bulk). */
.ja-selectable-list-page .ja-selectable-list .fi-ta-actions-header-cell,
.ja-selectable-list-page .ja-selectable-list .fi-ta-actions-cell {
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: none !important;
}

.ja-selectable-list-page .ja-selectable-list .fi-ta-actions-cell .fi-ta-actions {
    display: none !important;
}

/* Toolbar bulk Filament (Archiver / Supprimer / Plus) — toujours visible si sélection */
.ja-selectable-list-page .ja-selectable-list .fi-ta-header-toolbar .fi-ta-actions {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.45rem;
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
}

/* Événements : menu ⋮ visible (Ouvrir / Archiver / Supprimer) */
.ja-selectable-list-page .ja-events-table .fi-ta-actions-header-cell,
.ja-selectable-list-page .ja-events-table .fi-ta-actions-cell,
.ja-selectable-list-page .ja-premium-table--events .fi-ta-actions-header-cell,
.ja-selectable-list-page .ja-premium-table--events .fi-ta-actions-cell {
    width: 3rem !important;
    min-width: 3rem !important;
    max-width: 3.5rem !important;
    padding: 0.25rem 0.35rem !important;
    overflow: visible !important;
    border: none !important;
}

.ja-selectable-list-page .ja-events-table .fi-ta-actions-cell .fi-ta-actions,
.ja-selectable-list-page .ja-premium-table--events .fi-ta-actions-cell .fi-ta-actions {
    display: flex !important;
    justify-content: flex-end;
    align-items: center;
}

.ja-selectable-list-page .ja-events-table .fi-ta-actions .fi-dropdown-trigger,
.ja-selectable-list-page .ja-events-table .fi-ta-actions .fi-btn,
.ja-selectable-list-page .ja-events-table .fi-ta-actions .fi-icon-btn,
.ja-selectable-list-page .ja-premium-table--events .fi-ta-actions .fi-dropdown-trigger,
.ja-selectable-list-page .ja-premium-table--events .fi-ta-actions .fi-btn,
.ja-selectable-list-page .ja-premium-table--events .fi-ta-actions .fi-icon-btn {
    min-height: 2.25rem;
    min-width: 2.25rem;
}

/* Checkboxes toujours visibles (page courante) */
.ja-selectable-list-page .ja-selectable-list .fi-ta-selection-cell,
.ja-selectable-list-page .ja-selectable-list .fi-ta-header-cell.fi-ta-selection-cell {
    display: table-cell !important;
    width: 2.75rem;
}

.ja-selectable-list-page .ja-selectable-list input.fi-ta-record-checkbox,
.ja-selectable-list-page .ja-selectable-list input.fi-ta-page-checkbox {
    display: inline-block !important;
    pointer-events: auto !important;
    opacity: 1 !important;
    width: 1.15rem;
    height: 1.15rem;
    cursor: pointer;
}

/* Devis : checkboxes visibles (anciennement masquées dans ja-premium-crud) */
.ja-selectable-list-page .ja-premium-table--quotes .fi-ta-selection-cell,
.ja-selectable-list-page .ja-premium-table--quotes .fi-ta-header-cell.fi-ta-selection-cell,
.ja-selectable-list-page .ja-premium-table--quotes .fi-ta-header-cell.fi-ta-record-checkbox {
    display: table-cell !important;
    width: 2.75rem;
}

.ja-selectable-list-page .ja-premium-table--quotes input.fi-ta-record-checkbox,
.ja-selectable-list-page .ja-premium-table--quotes input.fi-ta-page-checkbox {
    display: inline-block !important;
}

/* Locations / réservations (cartes) */
.ja-selectable-list-page .ja-rental-bookings-table .fi-ta-selection-cell,
.ja-selectable-list-page .ja-premium-table--rentals .fi-ta-selection-cell {
    display: flex !important;
    align-items: flex-start;
    padding: 0.5rem 0.5rem 0 !important;
}

.ja-selectable-list-page .ja-rental-bookings-table input.fi-ta-record-checkbox,
.ja-selectable-list-page .ja-premium-table--rentals input.fi-ta-record-checkbox {
    display: inline-block !important;
}

.ja-selectable-list-page .ja-rental-booking-card--active {
    outline: 2px solid color-mix(in srgb, var(--jaos-primary) 55%, transparent);
    outline-offset: 2px;
}

/* Barre de sélection Filament — sticky, tactile */
.ja-selectable-list-page .fi-ta-selection-indicator {
    position: sticky;
    top: 0;
    z-index: 5;
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.55rem 0.75rem;
    margin: 0 0 0.65rem;
    padding: 0.65rem 0.85rem !important;
    border: 1px solid color-mix(in srgb, var(--jaos-primary) 35%, transparent) !important;
    border-radius: 10px !important;
    background: color-mix(in srgb, var(--jaos-primary) 12%, var(--jaos-surface)) !important;
    box-shadow: none !important;
}

/* Events : regrouper toolbar bulk + indicateur sélection (Dark Premium) */
.ja-events-page .fi-ta-header-toolbar {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem 0.65rem;
    margin: 0 0 0.5rem;
    padding: 0.55rem 0.15rem !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.ja-events-page .fi-ta-header-toolbar .fi-ta-actions .fi-btn,
.ja-events-page .fi-ta-header-toolbar .ja-selectable-list__primary,
.ja-events-page .fi-ta-header-toolbar .ja-selectable-list__more {
    min-height: 2.5rem !important;
    padding-inline: 0.85rem !important;
    font-size: 0.8125rem !important;
    font-weight: 650 !important;
    border-radius: 9px !important;
}

.ja-selectable-list-page .fi-ta-selection-indicator .fi-ta-selection-indicator-actions-ctn,
.ja-selectable-list-page .fi-ta-selection-indicator .fi-ac {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.45rem;
}

.ja-selectable-list-page .fi-ta-selection-indicator .fi-btn,
.ja-selectable-list-page .ja-selectable-list__primary,
.ja-selectable-list-page .ja-selectable-list__more {
    min-height: 2.5rem !important;
    padding-inline: 0.85rem !important;
    font-size: 0.8125rem !important;
    font-weight: 650 !important;
    border-radius: 9px !important;
}

.ja-selectable-list-page .ja-premium-row--clickable {
    cursor: pointer;
}

.ja-selectable-list-page .ja-premium-row--clickable:active > td {
    background-color: color-mix(in srgb, var(--jaos-primary) 8%, transparent) !important;
}

@media (max-width: 1023px) {
    .ja-selectable-list-page .ja-selectable-list__primary--desktop {
        display: none !important;
    }

    .ja-selectable-list-page .fi-ta-selection-indicator {
        padding: 0.55rem 0.65rem !important;
    }

    .ja-selectable-list-page .fi-ta-selection-indicator .fi-btn {
        min-height: 2.75rem !important;
    }
}
