/**
 * IActualité - RGPD & Bannière Cookies
 * Styles de la bannière de consentement.
 *
 * Bandeau bas non-bloquant (au lieu d'un overlay plein écran) : conforme aux
 * recommandations Google sur les interstitiels intrusifs mobiles — le contenu
 * de la page reste visible et accessible (scroll libre, pas de blocage) pendant
 * l'affichage. Le flou (backdrop-filter) est conservé, mais porté par le fond
 * semi-transparent du bandeau lui-même plutôt que par un calque plein écran :
 * c'est le contenu situé juste derrière le bandeau qui est flouté, pas toute
 * la page.
 */
#iacu-banner{display:none;position:fixed;bottom:0;width:calc(100% - 40px);max-width:600px;background:rgba(10,15,20,.88);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#e6edf3;padding:24px 28px;border-radius:16px 16px 0 0;border:1px solid rgba(0,220,255,.2);border-bottom:none;box-shadow:0 0 0 1px rgba(0,220,255,.08),0 0 40px rgba(0,180,255,.12),0 -12px 40px rgba(0,0,0,.5);z-index:999999;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-sizing:border-box;animation:iaculFadeIn .35s cubic-bezier(.16,1,.3,1);}
/* Position réglable depuis l'admin (iacu_banner_position). Fallback centré si la valeur est absente/inconnue. */
#iacu-banner.iacu-pos-bottom-left{left:20px;right:auto;}
#iacu-banner.iacu-pos-bottom-right{right:20px;left:auto;}
#iacu-banner:not(.iacu-pos-bottom-left):not(.iacu-pos-bottom-right){left:0;right:0;margin:0 auto;}
#iacu-banner::before{content:'';position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,rgba(0,220,255,.6),transparent);border-radius:1px;}
.iacu-closing{animation:iaculFadeOut .3s cubic-bezier(.16,1,.3,1) forwards!important;}
#iacu-site-name{font-size:18px;font-weight:800;color:#fff;margin:0 0 4px;letter-spacing:-.02em;display:flex;align-items:center;gap:8px;text-shadow:0 0 20px rgba(0,220,255,.4);}
#iacu-skip{display:block;font-size:13px;color:#9ca3af;text-decoration:none;cursor:pointer;margin-bottom:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:8px 12px;font-family:inherit;text-align:center;width:100%;box-sizing:border-box;transition:all .15s;letter-spacing:.01em;}
#iacu-skip:hover{color:#e6edf3;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.18);}
#iacu-banner-text{font-size:13px;line-height:1.7;color:#8b949e;margin:0 0 22px;}
#iacu-details{background:rgba(0,220,255,.03);border:1px solid rgba(0,220,255,.12);padding:14px 16px;border-radius:10px;margin-bottom:18px;display:none;}
.iacu-opt{display:flex;justify-content:space-between;align-items:center;padding:9px 0;font-size:13px;color:#c9d1d9;border-bottom:1px solid rgba(255,255,255,.05);}
.iacu-opt:last-child{border-bottom:none;padding-bottom:0;}
.iacu-opt label{display:flex;align-items:center;gap:8px;}
.iacu-opt input[type=checkbox]{width:16px;height:16px;accent-color:#00dcff;cursor:pointer;}
.iacu-btns{display:flex;gap:10px;flex-wrap:wrap;}
.iacu-b{flex:1;min-width:120px;padding:13px 10px;border:none;border-radius:10px;cursor:pointer;font-weight:800;font-family:inherit;transition:all .2s;letter-spacing:.02em;text-transform:uppercase;font-size:12px;}
.iacu-b:active{transform:scale(.97);}
/* Boutons "Tout accepter" / "Tout refuser" : même poids visuel (remplissage plein,
   même intensité d'ombre, même contraste de texte) pour respecter l'exigence CNIL
   de symétrie entre acceptation et refus. Le refus est en gris neutre plutôt qu'en
   rouge : le rouge connote un choix "dangereux/négatif" et biaiserait la décision. */
.iacu-b-yes{background:linear-gradient(135deg,#00b4d8,#0077b6);color:#ffffff;text-shadow:0 1px 4px rgba(0,0,0,.4);box-shadow:0 0 20px rgba(0,180,255,.35),0 4px 14px rgba(0,119,182,.4);border:1px solid rgba(0,220,255,.4);}
.iacu-b-yes:hover{box-shadow:0 0 30px rgba(0,220,255,.5),0 6px 20px rgba(0,119,182,.5);filter:brightness(1.12);transform:translateY(-1px);}
.iacu-b-no{background:linear-gradient(135deg,#4b5563,#1f2937);color:#ffffff;text-shadow:0 1px 4px rgba(0,0,0,.4);box-shadow:0 0 20px rgba(0,0,0,.35),0 4px 14px rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.22);}
.iacu-b-no:hover{box-shadow:0 0 30px rgba(0,0,0,.5),0 6px 20px rgba(0,0,0,.5);filter:brightness(1.18);transform:translateY(-1px);}
.iacu-b-set{background:rgba(255,255,255,.05);color:#8b949e;border:1px solid rgba(255,255,255,.08);}
.iacu-b-set:hover{background:rgba(255,255,255,.1);color:#c9d1d9;transform:translateY(-1px);}
#iacu-trigger{-webkit-appearance:none;appearance:none;box-sizing:border-box;margin:0;padding:0;line-height:1;position:fixed;bottom:20px;left:20px;width:42px;height:42px;flex-shrink:0;background:#0d1117;color:#00b4d8;border-radius:50%;box-shadow:0 0 14px rgba(0,180,255,.3),0 4px 16px rgba(0,0,0,.5);display:none;align-items:center;justify-content:center;cursor:pointer;z-index:999997;font-size:18px;font-family:inherit;border:1px solid rgba(0,220,255,.2);transition:all .2s;}
#iacu-trigger.iacu-pos-bottom-right{left:auto;right:20px;}
#iacu-trigger:hover{box-shadow:0 0 22px rgba(0,220,255,.45);transform:rotate(20deg);}
/* Anneau de focus visible pour la navigation clavier : les boutons ont des fonds
   personnalisés qui peuvent masquer l'outline par défaut du navigateur. */
#iacu-banner:focus-visible,#iacu-trigger:focus-visible,#iacu-skip:focus-visible,.iacu-b:focus-visible{outline:2px solid #00dcff;outline-offset:3px;}

/**
 * IActualité - RGPD & Bannière Cookies
 * Styles de la bannière de consentement.
 *
 * Bandeau bas non-bloquant (au lieu d'un overlay plein écran) : conforme aux
 * recommandations Google sur les interstitiels intrusifs mobiles — le contenu
 * de la page reste visible et accessible (scroll libre, pas de blocage) pendant
 * l'affichage. Le flou (backdrop-filter) est conservé, mais porté par le fond
 * semi-transparent du bandeau lui-même plutôt que par un calque plein écran :
 * c'est le contenu situé juste derrière le bandeau qui est flouté, pas toute
 * la page.
 */
#iacu-banner{display:none;position:fixed;bottom:0;width:calc(100% - 40px);max-width:600px;background:rgba(10,15,20,.88);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#e6edf3;padding:24px 28px;border-radius:16px 16px 0 0;border:1px solid rgba(0,220,255,.2);border-bottom:none;box-shadow:0 0 0 1px rgba(0,220,255,.08),0 0 40px rgba(0,180,255,.12),0 -12px 40px rgba(0,0,0,.5);z-index:999999;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-sizing:border-box;animation:iaculFadeIn .35s cubic-bezier(.16,1,.3,1);}
/* Position réglable depuis l'admin (iacu_banner_position). Fallback centré si la valeur est absente/inconnue. */
#iacu-banner.iacu-pos-bottom-left{left:20px;right:auto;}
#iacu-banner.iacu-pos-bottom-right{right:20px;left:auto;}
#iacu-banner:not(.iacu-pos-bottom-left):not(.iacu-pos-bottom-right){left:0;right:0;margin:0 auto;}
#iacu-banner::before{content:'';position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,rgba(0,220,255,.6),transparent);border-radius:1px;}
@keyframes iaculFadeIn{from{opacity:0;transform:translateY(24px);filter:blur(4px);}to{opacity:1;transform:translateY(0);filter:blur(0);}}
@keyframes iaculFadeOut{from{opacity:1;transform:translateY(0);filter:blur(0);}to{opacity:0;transform:translateY(24px);filter:blur(4px);}}
.iacu-closing{animation:iaculFadeOut .3s cubic-bezier(.16,1,.3,1) forwards!important;}
#iacu-site-name{font-size:18px;font-weight:800;color:#fff;margin:0 0 4px;letter-spacing:-.02em;display:flex;align-items:center;gap:8px;text-shadow:0 0 20px rgba(0,220,255,.4);}
#iacu-skip{display:block;font-size:13px;color:#9ca3af;text-decoration:none;cursor:pointer;margin-bottom:18px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:8px 12px;font-family:inherit;text-align:center;width:100%;box-sizing:border-box;transition:all .15s;letter-spacing:.01em;}
#iacu-skip:hover{color:#e6edf3;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.18);}
#iacu-banner-text{font-size:13px;line-height:1.7;color:#8b949e;margin:0 0 22px;}
#iacu-details{background:rgba(0,220,255,.03);border:1px solid rgba(0,220,255,.12);padding:14px 16px;border-radius:10px;margin-bottom:18px;display:none;}
.iacu-opt{display:flex;justify-content:space-between;align-items:center;padding:9px 0;font-size:13px;color:#c9d1d9;border-bottom:1px solid rgba(255,255,255,.05);}
.iacu-opt:last-child{border-bottom:none;padding-bottom:0;}
.iacu-opt label{display:flex;align-items:center;gap:8px;}
.iacu-opt input[type=checkbox]{width:16px;height:16px;accent-color:#00dcff;cursor:pointer;}
.iacu-btns{display:flex;gap:10px;flex-wrap:wrap;}
.iacu-b{flex:1;min-width:120px;padding:13px 10px;border:none;border-radius:10px;cursor:pointer;font-weight:800;font-family:inherit;transition:all .2s;letter-spacing:.02em;text-transform:uppercase;font-size:12px;}
.iacu-b:active{transform:scale(.97);}
/* Boutons "Tout accepter" / "Tout refuser" : même poids visuel (remplissage plein,
   même intensité d'ombre, même contraste de texte) pour respecter l'exigence CNIL
   de symétrie entre acceptation et refus. Le refus est en gris neutre plutôt qu'en
   rouge : le rouge connote un choix "dangereux/négatif" et biaiserait la décision. */
.iacu-b-yes{background:linear-gradient(135deg,#00b4d8,#0077b6);color:#ffffff;text-shadow:0 1px 4px rgba(0,0,0,.4);box-shadow:0 0 20px rgba(0,180,255,.35),0 4px 14px rgba(0,119,182,.4);border:1px solid rgba(0,220,255,.4);}
.iacu-b-yes:hover{box-shadow:0 0 30px rgba(0,220,255,.5),0 6px 20px rgba(0,119,182,.5);filter:brightness(1.12);transform:translateY(-1px);}
.iacu-b-no{background:linear-gradient(135deg,#4b5563,#1f2937);color:#ffffff;text-shadow:0 1px 4px rgba(0,0,0,.4);box-shadow:0 0 20px rgba(0,0,0,.35),0 4px 14px rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.22);}
.iacu-b-no:hover{box-shadow:0 0 30px rgba(0,0,0,.5),0 6px 20px rgba(0,0,0,.5);filter:brightness(1.18);transform:translateY(-1px);}
.iacu-b-set{background:rgba(255,255,255,.05);color:#8b949e;border:1px solid rgba(255,255,255,.08);}
.iacu-b-set:hover{background:rgba(255,255,255,.1);color:#c9d1d9;transform:translateY(-1px);}
#iacu-trigger{-webkit-appearance:none;appearance:none;box-sizing:border-box;margin:0;padding:0;line-height:1;position:fixed;bottom:20px;left:20px;width:42px;height:42px;flex-shrink:0;background:#0d1117;color:#00b4d8;border-radius:50%;box-shadow:0 0 14px rgba(0,180,255,.3),0 4px 16px rgba(0,0,0,.5);display:none;align-items:center;justify-content:center;cursor:pointer;z-index:999997;font-size:18px;font-family:inherit;border:1px solid rgba(0,220,255,.2);transition:all .2s;}
#iacu-trigger.iacu-pos-bottom-right{left:auto;right:20px;}
#iacu-trigger:hover{box-shadow:0 0 22px rgba(0,220,255,.45);transform:rotate(20deg);}
/* Anneau de focus visible pour la navigation clavier : les boutons ont des fonds
   personnalisés qui peuvent masquer l'outline par défaut du navigateur. */
#iacu-banner:focus-visible,#iacu-trigger:focus-visible,#iacu-skip:focus-visible,.iacu-b:focus-visible{outline:2px solid #00dcff;outline-offset:3px;}
@media(max-width:480px){
#iacu-banner{padding:20px 18px;border-radius:14px 14px 0 0;}
.iacu-b{min-width:80px;font-size:11px;padding:11px 8px;}
}
