/**
 * Koaloo — anti « vibe coded / UI IA »
 * Obligatoire sur toutes les pages :
 * - pas de drop shadows
 * - pas d’hover animé (scale / lift / glow)
 * - pas de dégradés décoratifs
 * - pas de couleurs néon
 * - pas de liquid glass
 */

:root,
[data-theme="dark"],
[data-theme="light"],
html {
    --info: #8FA3B8;
    --info-dark: #0D1B2A;
    --accent-bright: #FF9201;
    --danger: #D4524A;
    --danger-dark: #B33B34;
    --warning: #E08A2E;
    --warning-dark: #C46F18;

    --shadow-sm: none;
    --shadow: none;
    --shadow-md: none;
    --shadow-lg: none;
    --shadow-xl: none;
    --shadow-2xl: none;

    --gradient-primary: #FF9201;
    --gradient-secondary: #FF9201;
    --gradient-surface: #0D1B2A;
    /* Choix artistique conservé : dégradé header marine → orange */
    --gradient-header: linear-gradient(180deg, #0D1B2A 0%, #FF9201 400%);

    --transition: color 0.12s ease, background-color 0.12s ease, border-color 0.12s ease, opacity 0.12s ease;
    --transition-fast: color 0.1s ease, background-color 0.1s ease, border-color 0.1s ease, opacity 0.1s ease;
    --transition-slow: color 0.16s ease, background-color 0.16s ease, border-color 0.16s ease, opacity 0.16s ease;
}

/* Header : dégradé artistique autorisé (exception) */
.header {
    background: linear-gradient(180deg, #0D1B2A 0%, #FF9201 400%) !important;
    background-image: linear-gradient(180deg, #0D1B2A 0%, #FF9201 400%) !important;
}

/* Drop shadows / glow */
*,
*::before,
*::after {
    box-shadow: none !important;
    text-shadow: none !important;
}

/* Liquid glass */
*,
*::before,
*::after {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* Surfaces : opaque, sans voile flou */
.bottom-nav {
    background: #0D1B2A !important;
    border-top: 1px solid #334155 !important;
}

[data-theme="light"] .bottom-nav {
    background: #FFF8E7 !important;
    border-top-color: rgba(13, 27, 42, 0.14) !important;
}

.koaloo-fcm-popup-card {
    background: #152536 !important;
    color: #F1F5F9 !important;
}

.koaloo-fcm-popup-overlay {
    background: rgba(0, 0, 0, 0.55) !important;
}

/* Dégradés décoratifs → aplat */
.gradient,
.gradient-bg,
.btn-gradient,
.hero-gradient,
[class*="gradient-"],
[class*="-gradient"],
.koaloo-nav-progress__dot,
#koaloo-nav-progress .koaloo-nav-progress__dot {
    background-image: none !important;
    background-color: #FF9201 !important;
}

.btn-primary,
.btn-secondary,
.primary-btn,
.cta-button,
.ox-commu-org-bar__primary,
.communautes-topbar__amis,
.home-geo-distance-banner__btn--primary,
.koaloo-fcm-popup-btn-primary {
    background-image: none !important;
}

/* Hover / active : aucun lift / scale décoratif (sauf contrôles UI : toggles, switches) */
@media (hover: hover) and (pointer: fine) {
    a:hover,
    button:hover,
    .btn:hover,
    .nav-item:hover,
    .event-card:hover,
    .event-card-horizontal:hover,
    .setting-item:hover,
    .stat-card:hover,
    .profile-main-card:hover,
    .community-feed-card:hover,
    .amis-v2-card:hover,
    [role="button"]:hover {
        transform: none !important;
        box-shadow: none !important;
    }
}

a:active,
button:active,
.btn:active,
.nav-item:active,
.event-card:active,
[role="button"]:active {
    transform: none !important;
}

/* Animations « wow » neutres */
@keyframes pulse {
    0%, 100% { opacity: 1; transform: none; }
    50% { opacity: 1; transform: none; }
}
@keyframes glow {
    0%, 100% { opacity: 1; }
}
@keyframes float {
    0%, 100% { transform: none; }
}
@keyframes bounce {
    0%, 100% { transform: none; }
}
@keyframes shimmer {
    0%, 100% { opacity: 1; }
}
@keyframes koalooFcmPopupFadeIn {
    from { opacity: 1; }
    to { opacity: 1; }
}

/* Cartes : bordure plate, pas de relief (sauf fil Social : sans cadre) */
.event-card,
.event-card-horizontal,
.profile-main-card,
.stat-card,
.setting-item,
.modal-content,
.koaloo-fcm-popup-card,
.friends-requests-modal-card {
    border: 1px solid var(--border, #334155);
}

.communautes-page--feed .community-feed-card,
.communautes-page--feed .community-stories-section,
.communautes-page--feed .communautes-topbar,
.communautes-page--feed .community-discover-panel,
.communautes-page--feed .community-feed-filters {
    border: none !important;
    box-shadow: none !important;
}

.communautes-page--feed .community-feed-filter {
    border: none !important;
    box-shadow: none !important;
    color: #fff !important;
}

.communautes-page--feed .community-feed-filter.active {
    border: none !important;
    color: #fff !important;
}

/* Remplacer accents lavande / indigo encore ciblés */
.bottom-nav {
    border-top-color: #334155 !important;
}

/* Néons hardcodés fréquents (lavande / rose / jaune) → marques sobres */
.text-neon,
.glow-text,
.neon,
.badge-neon {
    color: #FF9201 !important;
    text-shadow: none !important;
}

/* Boutons / pastilles encore en dÃ©gradÃ© violet-orange */
.btn-primary,
.btn,
.primary-btn,
.cta,
[class*="btn-primary"] {
    background-image: none !important;
}

/* Vérifié / chips : pas de glow */
.koaloo-verified,
.verified-badge {
    box-shadow: none !important;
    filter: none !important;
}

/* ═══════════════════════════════════════════
   Exception : case Koaloo (mascotte)
   Ombres + animations autorisées à l’intérieur
   ═══════════════════════════════════════════ */
.koaloo-mascotte-box {
    box-shadow:
        0 8px 28px rgba(0, 0, 0, 0.28),
        0 0 36px rgba(255, 146, 1, 0.18),
        inset 0 0 36px rgba(255, 255, 255, 0.22) !important;
    border-color: rgba(255, 146, 1, 0.28) !important;
}

[data-theme="dark"] .koaloo-mascotte-box {
    box-shadow:
        0 10px 32px rgba(0, 0, 0, 0.45),
        0 0 40px rgba(255, 146, 1, 0.16),
        inset 0 0 40px rgba(255, 255, 255, 0.08) !important;
}

/* Notes / sparkles : animations flottantes */
.koaloo-mascotte-box .musical-note {
    animation: koalooMascotteFloat 6s ease-in-out infinite !important;
    color: rgba(255, 146, 1, 0.65) !important;
}
.koaloo-mascotte-box .musical-note.note-1 { animation-delay: 0s !important; }
.koaloo-mascotte-box .musical-note.note-2 { animation-delay: 2s !important; }
.koaloo-mascotte-box .musical-note.note-3 { animation-delay: 4s !important; }

.koaloo-mascotte-box .sparkle {
    animation: koalooMascotteSparkle 3s ease-in-out infinite !important;
}
.koaloo-mascotte-box .sparkle.sparkle-1 { animation-delay: 0.5s !important; }
.koaloo-mascotte-box .sparkle.sparkle-2 { animation-delay: 1.5s !important; }
.koaloo-mascotte-box .sparkle.sparkle-3 { animation-delay: 2.5s !important; }
.koaloo-mascotte-box .sparkle.sparkle-4 { animation-delay: 1s !important; }

@keyframes koalooMascotteFloat {
    0%, 100% {
        transform: translateY(0) rotate(0deg);
        opacity: 0.55;
    }
    50% {
        transform: translateY(-18px) rotate(8deg);
        opacity: 1;
    }
}

@keyframes koalooMascotteSparkle {
    0%, 100% {
        opacity: 0;
        transform: scale(0.55);
    }
    50% {
        opacity: 1;
        transform: scale(1);
    }
}
