/* =====================================================
   ENFANCE FACILE - Styles complémentaires
   ===================================================== */
:root{
  --accent: #FF6F0F;
  --dark: #001D23;
  --border: #E4E7ED;
  --muted: #8D99AE;
}

/* ---------- illustrations ---------- */
.illustration-box{display:flex;align-items:center;justify-content:center;}
.illustration-box img{max-width:100%;height:auto;}
.illustration-sm{max-width:90px;}
.illustration-md{max-width:160px;}

/* ---------- alerts ---------- */
.alert-ef{padding:14px 18px;border-radius:6px;font-size:14px;font-weight:600;margin-bottom:16px;}
.alert-ef-error{background:#fde8e8;color:#c0392b;border:1px solid #f5c6cb;}
.alert-ef-success{background:#e6f7ee;color:#1f8a52;border:1px solid #b7e4c7;}

/* ---------- stat counters (home page) ---------- */
.stat-box{background:#fff;border-radius:8px;padding:34px 20px;text-align:center;box-shadow:0 6px 20px rgba(0,0,0,.06);height:100%;}
.stat-box .stat-icon{font-size:34px;color:var(--accent);margin-bottom:14px;}
.stat-box .counter-value{font-size:36px;font-weight:800;color:var(--dark);display:block;}
.stat-box .stat-label{color:var(--muted);font-weight:600;font-size:14px;margin-top:6px;}

/* ---------- causes / actions progress card reuse ---------- */
.action-card-link{text-decoration:none;color:inherit;}

/* ---------- news / actualites ---------- */
.news-card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 6px 20px rgba(0,0,0,.06);height:100%;display:flex;flex-direction:column;}
.news-card img{height:210px;width:100%;object-fit:cover;}
.news-card .news-body{padding:22px;display:flex;flex-direction:column;flex:1;}
.news-card .news-date{color:var(--accent);font-weight:700;font-size:12.5px;text-transform:uppercase;margin-bottom:8px;}
.news-card h5{font-weight:700;margin-bottom:10px;}
.news-card p{color:#666;flex:1;}

/* ---------- auth pages (connexion / inscription) ---------- */
.auth-section{padding:20px 0 80px;}
.auth-card{background:#fff;border-radius:10px;box-shadow:0 10px 40px rgba(0,0,0,.08);overflow:hidden;}
.auth-card .auth-illustration{background:#FFF0E6;display:flex;align-items:center;justify-content:center;padding:40px;height:100%;}
.auth-card .auth-form-side{padding:50px;}
.auth-tabs{display:flex;margin-bottom:26px;border-bottom:2px solid var(--border);}
.auth-tabs a{flex:1;text-align:center;padding:12px;font-weight:700;color:var(--muted);text-transform:uppercase;font-size:13px;border-bottom:2px solid transparent;margin-bottom:-2px;text-decoration:none;}
.auth-tabs a.active{color:var(--accent);border-color:var(--accent);}

/* ---------- badges statut ---------- */
.badge-ef{display:inline-block;padding:4px 12px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;}
.badge-actif{background:#d4edda;color:#1f8a52;}
.badge-suspendu{background:#fde8e8;color:#c0392b;}
.badge-valide{background:#d4edda;color:#1f8a52;}
.badge-en_attente{background:#fff3cd;color:#946c00;}
.badge-annule, .badge-refusee{background:#fde8e8;color:#c0392b;}
.badge-validee{background:#d4edda;color:#1f8a52;}

/* ---------- generic content page ---------- */
.content-card{background:#fff;padding:40px;border-radius:8px;box-shadow:0 6px 20px rgba(0,0,0,.06);margin-bottom:40px;}
.content-card h2{font-size:20px;font-weight:700;margin:22px 0 10px;}

/* ---------- empty state ---------- */
.empty-state-ef{text-align:center;padding:50px 20px;}
.empty-state-ef img{max-width:180px;margin-bottom:18px;}
.empty-state-ef p{color:var(--muted);}

/* ---------- amount pick buttons (don) ---------- */
.amount-pick{display:flex;flex-wrap:wrap;gap:10px;}
.amount-pick input{display:none;}
.amount-pick label{flex:1;min-width:80px;text-align:center;padding:14px 8px;border:2px solid var(--border);border-radius:6px;font-weight:700;cursor:pointer;color:var(--dark);transition:.15s;}
.amount-pick input:checked + label{background:var(--accent);border-color:var(--accent);color:#fff;}

/* =====================================================
   ADMIN (thème sombre + orange, accès dissimulé)
   ===================================================== */
.admin-body{background:#f4f5f7;font-family:'Inter',Arial,sans-serif;margin:0;}
.admin-wrap{display:flex;min-height:100vh;}
.admin-sidebar{width:250px;background:var(--dark);color:#fff;flex-shrink:0;}
.admin-sidebar .admin-brand{padding:22px 24px;font-size:19px;font-weight:800;border-bottom:1px solid #0f353c;}
.admin-sidebar .admin-brand span{color:var(--accent);}
.admin-sidebar nav a{
  display:flex;align-items:center;gap:10px;padding:13px 24px;color:#9fb3b7;
  font-weight:600;font-size:13.5px;border-left:3px solid transparent;text-decoration:none;
}
.admin-sidebar nav a:hover,.admin-sidebar nav a.active{color:#fff;background:rgba(255,255,255,.06);border-left-color:var(--accent);}
.admin-main{flex:1;padding:30px 36px;}
.admin-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;flex-wrap:wrap;gap:12px;}
.admin-topbar h1{font-size:23px;font-weight:800;margin:0;color:var(--dark);}
.admin-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px;margin-bottom:30px;}
.admin-stat-card{background:#fff;border-radius:6px;padding:22px;box-shadow:0 2px 10px rgba(0,0,0,.05);border-top:3px solid var(--accent);}
.admin-stat-card .label{font-size:12px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.5px;}
.admin-stat-card .value{font-size:26px;font-weight:800;margin-top:8px;color:var(--dark);}
.admin-card{background:#fff;border-radius:6px;padding:24px;box-shadow:0 2px 10px rgba(0,0,0,.05);margin-bottom:24px;}
.admin-card h3{font-size:16px;font-weight:700;margin-bottom:16px;color:var(--dark);}
.admin-table{width:100%;border-collapse:collapse;}
.admin-table th,.admin-table td{text-align:left;padding:12px 10px;border-bottom:1px solid #eee;font-size:13.5px;}
.admin-table th{color:var(--muted);text-transform:uppercase;font-size:11px;letter-spacing:.4px;}
.admin-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:4px;font-weight:700;font-size:13px;border:none;cursor:pointer;text-decoration:none;}
.admin-btn-accent{background:var(--accent);color:#fff;}
.admin-btn-accent:hover{background:#e6620d;color:#fff;}
.admin-btn-sm{padding:6px 12px;font-size:12px;border-radius:4px;}
.admin-btn-secondary{background:#e9eaed;color:#20232a;}
.admin-btn-secondary:hover{background:#dcdde1;color:#20232a;}
.admin-btn-danger{background:#d84343;color:#fff;}
.admin-btn-danger:hover{background:#b93030;color:#fff;}
.admin-btn-warning{background:#f0ad4e;color:#fff;}
.admin-btn-warning:hover{background:#d9942f;color:#fff;}
.admin-form-group{margin-bottom:16px;}
.admin-form-group label{display:block;font-size:13px;font-weight:700;margin-bottom:6px;}
.admin-form-group input,.admin-form-group select,.admin-form-group textarea{
  width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;
}
.admin-form-group input:focus,.admin-form-group select:focus,.admin-form-group textarea:focus{outline:none;border-color:var(--accent);}
.admin-login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--dark);}
.admin-login-box{background:#fff;border-radius:8px;padding:40px;max-width:400px;width:100%;}
.progress-mini{height:8px;background:#eee;border-radius:6px;overflow:hidden;}
.progress-mini span{display:block;height:100%;background:var(--accent);}

@media(max-width:820px){
  .admin-wrap{flex-direction:column;}
  .admin-sidebar{width:100%;}
  .auth-card .auth-illustration{display:none;}
}
