/* Minecraft Cubic/Appel Style Theme - Artelith */
/* VERSION LIGHT (Appel Sky Edition - CORRIGÉE) */
/* Force le rendu clair sur une structure HTML sombre */

@import url('https://fonts.googleapis.com/css2?family=Lilita+One&family=Nunito:wght@400;700;900&display=swap');

:root {
  /* Palette "Ciel" */
  --appel-bg: #daf6ff;
  --appel-bg-dark: #c5ebf9;
  --appel-yellow: #ffce00;
  --appel-blue: #0096ff;
  --appel-black: #2d3436;
  --appel-border: #000000;
}

/* --- 1. FOND DAMIER ET TEXTE GLOBAL --- */
body {
  font-family: 'Nunito', sans-serif;
  color: var(--appel-black) !important;
  background-color: var(--appel-bg);
  /* Motif Damier Bleu Ciel */
  background-image: 
      linear-gradient(45deg, var(--appel-bg-dark) 25%, transparent 25%), 
      linear-gradient(-45deg, var(--appel-bg-dark) 25%, transparent 25%), 
      linear-gradient(45deg, transparent 75%, var(--appel-bg-dark) 75%), 
      linear-gradient(-45deg, transparent 75%, var(--appel-bg-dark) 75%);
  background-size: 60px 60px;
  background-position: 0 0, 0 30px, 30px -30px, -30px 0px;
  background-attachment: fixed;
}

/* --- 2. CORRECTION DE LA NAVIGATION (Le plus important) --- */
/* Force la barre de navigation à être blanche et le texte noir */
.navbar, .navbar.bg-primary, .bg-gradient-primary {
    background: #ffffff !important; /* Fond blanc solide */
    background-color: #ffffff !important;
    border-bottom: 4px solid var(--appel-border) !important;
    box-shadow: 0 4px 0 rgba(0,0,0,0.05) !important;
}

/* Force les liens et textes de la navbar en noir */
.navbar-dark .navbar-nav .nav-link,
.navbar-dark .navbar-brand,
.navbar-dark .navbar-text,
.navbar a {
    color: var(--appel-black) !important;
    font-family: 'Lilita One', cursive;
    text-transform: uppercase;
    text-shadow: none !important; /* Enlève les ombres du thème sombre */
}

/* Effet au survol des liens navbar */
.navbar-dark .navbar-nav .nav-link:hover {
    color: var(--appel-blue) !important;
    background-color: transparent !important; /* Pas de fond gris moche */
}

/* Correction des dropdowns (menus déroulants) */
.dropdown-menu, .dropdown-menu-dark {
    background-color: #ffffff !important;
    border: 3px solid var(--appel-border) !important;
    color: var(--appel-black) !important;
    box-shadow: 8px 8px 0 rgba(0,0,0,0.1) !important;
}
.dropdown-item {
    color: var(--appel-black) !important;
}
.dropdown-item:hover {
    background-color: var(--appel-bg) !important;
    color: #000 !important;
}

/* --- 3. INVERSION DES COULEURS DU HTML (Hack Visuel) --- */

/* Transforme tout ce qui est "text-white" en NOIR */
.text-white, .text-light, .text-white-50 {
    color: var(--appel-black) !important;
}

/* Transforme les fonds sombres "bg-dark" en BLANC (Cartes) */
.bg-dark, .card, .modal-content {
    background-color: #ffffff !important;
    border: 3px solid var(--appel-border) !important;
    color: var(--appel-black) !important;
    border-radius: 12px !important;
    box-shadow: 6px 6px 0 rgba(0,0,0,0.1) !important;
}

/* En-têtes de cartes */
.card-header {
    background-color: #f1f2f6 !important;
    border-bottom: 3px solid var(--appel-border) !important;
    color: var(--appel-black) !important;
}

/* Textes gris */
.text-muted, .text-secondary {
    color: #636e72 !important;
    font-weight: 600;
}

/* --- 4. BOUTONS (Style Cartoon) --- */
.btn {
    font-family: 'Lilita One', cursive;
    text-transform: uppercase;
    border: 3px solid var(--appel-border) !important;
    border-radius: 10px !important;
    box-shadow: 0 4px 0 var(--appel-border) !important;
    margin-bottom: 4px;
    transition: transform 0.1s;
}
.btn:active {
    transform: translateY(4px);
    box-shadow: none !important;
}

/* Boutons Primaires (Bleu) */
.btn-primary {
    background-color: var(--appel-blue) !important;
    color: white !important;
    text-shadow: 1px 1px 0 #000;
}

/* Boutons Outline (C'était invisible avant, maintenant Noir) */
.btn-outline-light, .btn-outline-secondary {
    background-color: #ffffff !important;
    color: var(--appel-black) !important;
    border-color: var(--appel-border) !important;
}
.btn-outline-light:hover {
    background-color: #f1f2f6 !important;
    color: #000 !important;
}

/* Boutons Action (Vert/Jaune) */
.btn-success {
    background-color: var(--appel-green) !important;
    color: white !important;
}
.btn-warning {
    background-color: var(--appel-yellow) !important;
    color: black !important;
}

/* --- 5. ÉLÉMENTS DIVERS --- */

/* Inputs de formulaire */
.form-control, .form-select {
    background-color: #f8f9fa !important;
    border: 2px solid #b2bec3 !important;
    color: var(--appel-black) !important;
}
.form-control:focus {
    border-color: var(--appel-blue) !important;
    box-shadow: 0 0 0 4px rgba(0, 150, 255, 0.2) !important;
}

/* Badges */
.badge {
    border: 2px solid var(--appel-border) !important;
    box-shadow: 2px 2px 0 rgba(0,0,0,0.1);
    color: white !important;
    text-shadow: 1px 1px 0 #000;
}
.badge.bg-warning, .badge.bg-light {
    color: black !important;
    text-shadow: none !important;
    background-color: var(--appel-yellow) !important;
}

/* Tables */
.table {
    color: var(--appel-black) !important;
    --bs-table-bg: transparent !important;
}
.table td, .table th {
    border-color: #dfe6e9 !important;
}

/* Icônes FontAwesome */
.fas, .far, .fab {
    /* Laisse les icônes prendre la couleur du texte parent */
}

/* 
============================================================================
   Notifications Toast - Thème Minecraft Cohérent
   ============================================================================ */

.toast {
    background: var(--minecraft-card-bg) !important;
    border: 3px solid var(--border-color) !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0 #1a1a1a, 0 10px 25px rgba(0, 0, 0, 0.3) !important;
    color: var(--text-primary) !important;
    font-family: 'Minecraft', 'Courier New', monospace !important;
}

.toast-container {
    z-index: 9999 !important;
}

.toast-header {
    background: var(--gradient-primary) !important;
    color: white !important;
    border-bottom: 3px solid var(--primary-color) !important;
    border-radius: 0 !important;
    text-transform: uppercase;
    font-weight: bold;
    text-shadow: 2px 2px 0 #000000;
}

.toast-body {
    background: var(--minecraft-card-bg) !important;
    color: var(--text-secondary) !important;
    text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.7);
    padding: 1rem;
}

/* Variantes de couleurs pour les différents types */
.toast.bg-success .toast-header {
    background: linear-gradient(135deg, #5cb85c 0%, #4ade80 100%) !important;
    border-bottom-color: #5cb85c !important;
}

.toast.bg-danger .toast-header {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    border-bottom-color: #ef4444 !important;
}

.toast.bg-warning .toast-header {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    border-bottom-color: #f59e0b !important;
    color: #1a1a1a !important;
}

.toast.bg-info .toast-header {
    background: linear-gradient(135deg, #00d4aa 0%, #62c554 100%) !important;
    border-bottom-color: #00d4aa !important;
}

/* Animation d'apparition */
@keyframes slideInRight {
    from {
        transform: translateX(100%);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

.toast.showing {
    animation: slideInRight 0.3s ease-out;
}

/* Bouton de fermeture */
.toast .btn-close {
    filter: brightness(0) invert(1);
    opacity: 0.8;
}

.toast .btn-close:hover {
    opacity: 1;
}

/* Style pour les icônes dans les toasts */
.toast-header i {
    margin-right: 0.5rem;
}

.toast-body i {
    margin-right: 0.5rem;
    color: var(--primary-color);
}
