/* @mnahub-path: public/assets/css/mnahub.css */
/* file: /var/www/vhosts/mnahub.fr/httpdocs/public/assets/css/mnahub.css
   version: 0.2.0
   description: Feuille de style de MNA Hub. Reprend l'identité de l'application :
                fond sobre, encre foncée, signature arc-en-ciel sur les accents,
                bleu fonctionnel. Responsive (mobile/tablette/desktop). Zéro CDN. */

:root{
  --paper:#FFFFFF; --encre:#1A1612; --gris:#5F5650; --gris-2:#8B857B;
  --ligne:#E8E5DC; --bleu:#2D5BFF; --bleu-2:#1A3FB8; --fond:#FAFAF8;
  --vert:#0B8255; --rouge:#C0286A; --ambre:#8C6900;
  --rainbow:linear-gradient(90deg,#00D9C8,#2E8CFD,#C81DE8,#FE2D8C,#FF9E02,#00D9C8);
  --sans:"Avenir Next","Segoe UI",Seravek,Candara,Corbel,system-ui,sans-serif;
  --mono:"SF Mono",ui-monospace,Menlo,Consolas,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--sans);color:var(--encre);background:var(--fond);line-height:1.6}
a{color:var(--bleu-2);text-decoration:none}
a:hover{text-decoration:underline}

/* Filet arc-en-ciel signature (en haut de page) */
.rainbow-bar{height:3px;background:var(--rainbow);background-size:200% 100%;animation:mna-flow 6s linear infinite}
@keyframes mna-flow{to{background-position:200% 0}}

/* En-tête */
header.site{background:var(--paper);border-bottom:1px solid var(--ligne)}
header.site .wrap{max-width:1100px;margin:0 auto;padding:14px 20px;display:flex;align-items:center;gap:20px}
.logo{font-family:var(--mono);font-weight:800;font-size:22px;letter-spacing:2px;
  background:var(--rainbow);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:mna-flow 6s linear infinite;-webkit-user-select:none;user-select:none}
.logo::selection,.logo *::selection{background:transparent}
.logo small{font-weight:400;color:var(--gris);-webkit-text-fill-color:var(--gris)}
header.site nav{margin-left:auto;display:flex;gap:18px;align-items:center;flex-wrap:wrap}

/* Conteneur de page */
.wrap{max-width:1100px;margin:0 auto;padding:20px}
.page{padding:32px 20px}

/* Boutons */
.btn{display:inline-block;padding:11px 22px;border-radius:10px;border:1px solid var(--ligne);
  background:var(--paper);color:var(--encre);font-weight:600;cursor:pointer;font-size:14px;font-family:inherit}
.btn:hover{text-decoration:none;border-color:var(--bleu)}
.btn-primary{background:var(--bleu);color:#fff;border-color:var(--bleu)}
.btn-primary:hover{background:var(--bleu-2);border-color:var(--bleu-2)}
.btn-rainbow{background:var(--rainbow);background-size:200% 100%;color:#fff;border:none;font-weight:700;animation:mna-flow 6s linear infinite}
.btn-sm{padding:6px 12px;font-size:13px}

/* Hero accueil */
.hero{text-align:center;padding:70px 20px}
.hero .big{font-family:var(--mono);font-weight:800;font-size:64px;letter-spacing:6px;
  background:var(--rainbow);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:mna-flow 6s linear infinite;-webkit-user-select:none;user-select:none}
.hero p{color:var(--gris);font-size:18px;margin:14px 0 26px}

/* Cartes */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:24px}
.card{background:var(--paper);border:1px solid var(--ligne);border-radius:14px;padding:22px}
.card h3{margin-bottom:6px}
.card .muted{color:var(--gris);font-size:14px}

/* Messages flash */
.flash{padding:12px 16px;border-radius:10px;margin:12px 0;font-size:14px}
.flash.succes{background:#E9F7F0;color:var(--vert);border:1px solid #b7e3cf}
.flash.erreur{background:#FBE9F1;color:var(--rouge);border:1px solid #f0bcd5}
.flash.info{background:#EAF0FF;color:var(--bleu-2);border:1px solid #c2d3ff}

/* Formulaires */
.form{max-width:420px;margin:30px auto;background:var(--paper);border:1px solid var(--ligne);
  border-radius:14px;padding:26px}
.form label{display:block;font-size:13px;font-weight:600;margin:12px 0 5px}
.form input,.form select,.form textarea{width:100%;padding:10px 12px;border:1px solid var(--ligne);
  border-radius:9px;font-size:15px;font-family:inherit}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--bleu)}

/* Tableaux */
table.data{width:100%;border-collapse:collapse;background:var(--paper);border-radius:12px;overflow:hidden;
  border:1px solid var(--ligne);margin-top:14px}
table.data th,table.data td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--ligne);font-size:14px}
table.data th{background:var(--fond);font-weight:600;color:var(--gris)}
table.data tr:last-child td{border-bottom:none}

/* Badges d'état */
.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600}
.badge.on{background:#E9F7F0;color:var(--vert)}
.badge.off{background:#F1EFEA;color:var(--gris)}
.badge.rainbow{background:var(--rainbow);color:#fff}

/* Admin : structure avec sidebar */
.admin{display:flex;min-height:100vh}
.admin .side{width:230px;background:var(--paper);border-right:1px solid var(--ligne);padding:18px;flex:none}
.admin .side .logo{display:block;margin-bottom:18px}
.admin .side a{display:block;padding:10px 12px;border-radius:9px;color:var(--encre);font-size:14px;margin-bottom:3px}
.admin .side a:hover,.admin .side a.on{background:var(--fond);text-decoration:none}
.admin .main{flex:1;padding:28px;min-width:0}
.admin .main h1{font-size:24px;margin-bottom:6px}

/* Stat cards admin */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:18px 0}
.stat{background:var(--paper);border:1px solid var(--ligne);border-radius:12px;padding:18px}
.stat .n{font-size:30px;font-weight:800}
.stat .l{color:var(--gris);font-size:13px}

footer.site{border-top:1px solid var(--ligne);background:var(--paper);padding:24px;text-align:center;
  color:var(--gris);font-size:13px;margin-top:40px}

/* Responsive */
@media(max-width:760px){
  .admin{flex-direction:column}
  .admin .side{width:100%;border-right:none;border-bottom:1px solid var(--ligne);
    display:flex;flex-wrap:wrap;gap:6px}
  .admin .side a{flex:1;text-align:center;margin:0}
  .hero .big{font-size:44px}
  header.site .wrap{flex-wrap:wrap}
  table.data{display:block;overflow-x:auto}
}

/* end of file: /var/www/vhosts/mnahub.fr/httpdocs/public/assets/css/mnahub.css */
/* @mnahub-end: public/assets/css/mnahub.css */

/* --- Sélection : pas de surlignement bleu navigateur sur l'interface --- */
/* Éléments d'UI : aucune sélection visible */
nav, .logo, .btn, button, .badge, header, .side, h1, h2, h3 { -webkit-user-select:none; user-select:none; }
nav ::selection, .logo ::selection, .btn ::selection, button ::selection { background:transparent; }
/* Contenu lisible : sélection discrète aux couleurs MNA (au lieu du bleu système) */
.page ::selection, .card ::selection, p ::selection, pre ::selection, code ::selection { background:#2E8CFD; color:#fff; }
