@import '../../../../vendor/filament/filament/resources/css/theme.css';

@source '../../../../app/Filament/**/*';
@source '../../../../resources/views/filament/**/*';

/* ---------- Fennec BO — thème premium ---------- */
:root {
    --fennec-radius: 0.875rem;
    --fennec-shadow: 0 1px 2px rgb(15 23 42 / 0.04), 0 4px 16px -4px rgb(15 23 42 / 0.08);
    --fennec-shadow-hover: 0 2px 4px rgb(15 23 42 / 0.05), 0 12px 28px -8px rgb(15 23 42 / 0.16);
}

body {
    font-feature-settings: 'cv11', 'ss01';
    -webkit-font-smoothing: antialiased;
}

/* Cartes & sections */
.fi-section,
.fi-ta-ctn,
.fi-wi-chart,
.fi-in-section {
    border-radius: var(--fennec-radius);
    box-shadow: var(--fennec-shadow);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

/* KPI */
.fi-wi-stats-overview-stat {
    border-radius: var(--fennec-radius);
    box-shadow: var(--fennec-shadow);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
    position: relative;
    overflow: hidden;
}
.fi-wi-stats-overview-stat::before {
    content: '';
    position: absolute;
    inset: 0 0 auto 0;
    height: 3px;
    background: linear-gradient(90deg, var(--primary-500), var(--primary-300));
}
.fi-wi-stats-overview-stat:hover {
    box-shadow: var(--fennec-shadow-hover);
    transform: translateY(-2px);
}
.fi-wi-stats-overview-stat-value {
    letter-spacing: -0.03em;
    font-weight: 700;
}

/* Sidebar */
.fi-sidebar {
    border-right: 1px solid rgb(15 23 42 / 0.06);
}
.fi-sidebar-group-label {
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-size: 0.68rem;
    font-weight: 600;
    opacity: 0.6;
}
.fi-sidebar-item-button {
    border-radius: 0.65rem;
}
.fi-sidebar-item.fi-active .fi-sidebar-item-button {
    background: linear-gradient(90deg, color-mix(in oklab, var(--primary-500) 14%, transparent), transparent);
    font-weight: 600;
}

/* Topbar */
.fi-topbar {
    backdrop-filter: saturate(180%) blur(12px);
    background-color: color-mix(in oklab, white 78%, transparent);
}
.dark .fi-topbar {
    background-color: color-mix(in oklab, rgb(9 9 11) 78%, transparent);
}

/* En-têtes de page */
.fi-header-heading {
    letter-spacing: -0.025em;
    font-weight: 700;
}

/* Tableaux */
.fi-ta-header-cell {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 0.7rem;
}
.fi-ta-row {
    transition: background-color 0.15s ease;
}

/* Badges & boutons */
.fi-badge {
    font-weight: 600;
    letter-spacing: 0.01em;
}
.fi-btn {
    border-radius: 0.6rem;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.fi-btn:active {
    transform: scale(0.98);
}

/* Connexion */
.fi-simple-layout {
    background:
        radial-gradient(60rem 30rem at 10% -10%, color-mix(in oklab, var(--primary-500) 22%, transparent), transparent),
        radial-gradient(50rem 28rem at 110% 110%, color-mix(in oklab, var(--primary-400) 18%, transparent), transparent),
        rgb(250 250 250);
}
.dark .fi-simple-layout {
    background:
        radial-gradient(60rem 30rem at 10% -10%, color-mix(in oklab, var(--primary-500) 20%, transparent), transparent),
        radial-gradient(50rem 28rem at 110% 110%, color-mix(in oklab, var(--primary-400) 14%, transparent), transparent),
        rgb(9 9 11);
}
.fi-simple-main {
    border-radius: 1.25rem;
    box-shadow: 0 24px 60px -20px rgb(15 23 42 / 0.25);
}

/* Logo : plus grand sur l'écran de connexion */
.fi-simple-layout .fennec-brand {
    flex-direction: column;
    gap: 0.75rem;
    text-align: center;
}
.fi-simple-layout .fennec-brand-icon {
    width: 5.5rem;
    height: 5.5rem;
    border-radius: 1.4rem;
    box-shadow: 0 18px 40px -12px rgb(245 158 11 / 0.55);
}
.fi-simple-layout .fennec-brand-text {
    font-size: 0.8rem;
}
