/* EU Light Cookie Consent - banner.css - v20.0.0 */
:root{
 --ellcc-bg:#00FFFF;
 --ellcc-text:#000000;
 --ellcc-primary:#0000FF;
 --ellcc-primary-text:#FFFFFF;
}
#ellcc-root{
 position:fixed;left:0;right:0;bottom:0;z-index:999999;
 background:var(--ellcc-bg,#00FFFF);color:var(--ellcc-text,#000000);
 padding:16px;font-family:Inter,system-ui,sans-serif;
 transform:translateY(110%);transition:transform .45s cubic-bezier(.2,.8,.2,1);
 box-shadow:0 -2px 20px rgba(0,0,0,.12);box-sizing:border-box;
}
#ellcc-root *{box-sizing:border-box}
#ellcc-root.ellcc-visible{transform:translateY(0)}
.ellcc-inner{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:24px}
.ellcc-copy{flex:1 1 480px;min-width:260px}
.ellcc-title{font-weight:800;font-size:14px;line-height:1.3;margin-bottom:4px;color:var(--ellcc-text)}
.ellcc-text{font-size:12px;line-height:1.5;color:var(--ellcc-text)}
.ellcc-links{margin-top:8px;display:flex;gap:8px;align-items:center;font-size:12px;flex-wrap:wrap}
.ellcc-links a{font-weight:700;text-decoration:underline;text-underline-offset:2px}
.ellcc-links .ellcc-sep{font-weight:700;opacity:.6}
.ellcc-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.ellcc-btn{
 border:none;border-radius:2px;padding:12px 18px;margin:0;
 font-family:inherit;font-weight:700;font-size:13px;letter-spacing:.02em;text-transform:uppercase;
 cursor:pointer;line-height:1;transition:transform .15s,opacity .15s;
 background:var(--ellcc-primary);color:var(--ellcc-primary-text);
}
.ellcc-btn:hover{opacity:.9}
.ellcc-btn:active{transform:scale(.97)}
.ellcc-btn:focus-visible,.ellcc-modal-close:focus-visible,#ellcc-bubble:focus-visible{outline:3px solid #000;outline-offset:2px}
#ellcc-bubble{
 position:fixed;z-index:999998;width:48px;height:48px;border-radius:50%;padding:0;margin:0;
 display:flex;align-items:center;justify-content:center;cursor:pointer;
 box-shadow:0 4px 18px rgba(0,0,0,.32);font-size:22px;line-height:1;user-select:none;
 transition:transform .2s,background .2s,border-color .2s;
}
#ellcc-bubble:hover{transform:scale(1.08)}
#ellcc-modal{position:fixed;inset:0;z-index:1000000;background:rgba(0,0,0,.6);display:none;align-items:center;justify-content:center;padding:20px}
#ellcc-modal.ellcc-open{display:flex}
.ellcc-modal-box{max-width:580px;width:100%;max-height:90vh;overflow:auto;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.35);font-family:Inter,system-ui,sans-serif}
.ellcc-modal-head{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #eee}
.ellcc-modal-title{font-weight:800;font-size:16px}
.ellcc-modal-close{border:none;padding:8px 14px;border-radius:2px;font-family:inherit;font-weight:700;font-size:12px;text-transform:uppercase;cursor:pointer}
.ellcc-modal-body{padding:8px 16px}
.ellcc-switch{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid #f2f2f2;gap:16px}
.ellcc-switch:last-child{border-bottom:none}
.ellcc-switch-left{flex:1;min-width:0}
.ellcc-switch-title{font-weight:700;font-size:13px;line-height:1.2}
.ellcc-switch-desc{font-size:12px;color:#6b7280;margin-top:3px;line-height:1.4}
.ellcc-toggle{position:relative;width:44px;height:24px;flex-shrink:0;display:inline-block}
.ellcc-toggle input{position:absolute;opacity:0;width:0;height:0}
.ellcc-toggle-slider{position:absolute;inset:0;background:#d1d5db;border-radius:999px;cursor:pointer;transition:.2s}
.ellcc-toggle-slider:before{content:"";position:absolute;width:18px;height:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.ellcc-toggle input:checked + .ellcc-toggle-slider{background:#000000}
.ellcc-toggle input:checked + .ellcc-toggle-slider:before{transform:translateX(20px)}
.ellcc-toggle input:focus-visible + .ellcc-toggle-slider{outline:3px solid #000;outline-offset:2px}
/* Nécessaires : toujours ON, noir, non cliquable */
.ellcc-toggle input.ellcc-toggle-necessary + .ellcc-toggle-slider{background:#000000;opacity:1;cursor:not-allowed}
.ellcc-toggle input.ellcc-toggle-necessary + .ellcc-toggle-slider:before{transform:translateX(20px);background:#FFFFFF}
.ellcc-modal-foot{padding:16px;display:flex;flex-direction:column;gap:12px}
.ellcc-modal-links{display:flex;justify-content:center;gap:12px;font-size:12px;flex-wrap:wrap}
.ellcc-modal-links a{text-decoration:underline;font-weight:600}
.ellcc-modal-links .ellcc-sep{opacity:.5}
.ellcc-modal-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}

/* ===== MOBILE : 35vh max ===== */
@media (max-width:768px){
 #ellcc-root{max-height:35vh;overflow-y:auto;padding:0}
 .ellcc-inner{flex-direction:column;justify-content:flex-start;align-items:center;gap:8px;padding:12px 10px 8px;text-align:center}
 .ellcc-copy{flex:0 0 auto;width:100%;min-width:0}
 .ellcc-title{font-size:13px}
 .ellcc-text{font-size:11px;line-height:1.3}
 .ellcc-links{justify-content:center;margin-top:6px;font-size:11px}
 .ellcc-actions{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:5px;margin-top:4px}
 .ellcc-btn{height:36px;padding:0 3px;font-size:9px;line-height:1.1;display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal}
 .ellcc-modal-actions{justify-content:center}
}
@media (prefers-reduced-motion:reduce){
 #ellcc-root,#ellcc-bubble,.ellcc-btn,.ellcc-toggle-slider,.ellcc-toggle-slider:before{transition:none}
}
