.lgc-cookies{--lgcc-color:#138f8c;--lgcc-btn-text:#fff;--lgcc-text:#222;--lgcc-bg:#fff;--lgcc-blur:0px;--lgcc-size:14px;--lgcc-bw:1px;--lgcc-bc:var(--lgcc-color);--lgcc-radius:16px;--lgcc-btn-radius:999px;--lgcc-maxw:1280px;--lgcc-shadow:0 8px 30px rgba(0,0,0,.15);--lgcc-overlay:rgba(0,0,0,.45);--lgcc-line:color-mix(in srgb,var(--lgcc-text) 15%,transparent);position:fixed;z-index:99999;left:0;right:0;bottom:0;padding:16px;font-family:var(--lgcc-font,inherit);font-size:var(--lgcc-size);line-height:1.5;color:var(--lgcc-text);opacity:0;transform:translateY(20px);transition:opacity .3s,transform .3s;pointer-events:none}
.lgc-cookies[hidden]{display:none}
.lgc-cookies.is-visible{opacity:1;transform:none;pointer-events:auto}
.lgc-cookies__box{max-width:var(--lgcc-maxw);margin:0 auto;padding:20px 24px;background:var(--lgcc-bg);-webkit-backdrop-filter:blur(var(--lgcc-blur));backdrop-filter:blur(var(--lgcc-blur));border:var(--lgcc-bw) solid var(--lgcc-bc);border-radius:var(--lgcc-radius);box-shadow:var(--lgcc-shadow)}
.lgc-cookies__title{display:flex;align-items:center;gap:.45em;margin:0 0 10px;font-weight:700;font-size:1.07em;color:var(--lgcc-color)}
.lgc-cookies__icon{flex:0 0 auto;width:1.35em;height:1.35em}
.lgc-cookies__box{position:relative}
.lgc-cookies__badge{position:absolute;top:-10px;right:20px;padding:2px 10px;border-radius:999px;background:#e08f12;color:#fff;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.lgc-cookies__text p{margin:0 0 6px;color:inherit;font-size:inherit}
.lgc-cookies__link{color:var(--lgcc-color);text-decoration:underline}
.lgc-cookies__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px;margin-top:14px}
.lgc-cookies__btn{padding:.65em 1.45em;border-radius:var(--lgcc-btn-radius);border:1px solid var(--lgcc-color);font:inherit;font-size:.93em;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s,filter .2s}
.lgc-cookies__btn[hidden]{display:none}
.lgc-cookies__btn--solid{background:var(--lgcc-color);color:var(--lgcc-btn-text)}
.lgc-cookies__btn--solid:hover{filter:brightness(.92)}
.lgc-cookies__btn--outline{background:transparent;color:var(--lgcc-color)}
.lgc-cookies__btn--outline:hover{background:var(--lgcc-color);color:var(--lgcc-btn-text)}
.lgc-cookies__btn--link{margin-right:auto;padding-left:0;padding-right:0;border:0;background:none;color:inherit;opacity:.8;text-decoration:underline;text-transform:none;letter-spacing:0;font-weight:500}
.lgc-cookies__btn:focus-visible{outline:2px solid var(--lgcc-color);outline-offset:2px}

.lgc-cookies__prefs{margin-top:14px;border-top:1px solid var(--lgcc-line)}
.lgc-cookies__prefs[hidden]{display:none}
.lgc-cookies__cat{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:12px 0;border-bottom:1px solid var(--lgcc-line);cursor:pointer;font-weight:400;color:inherit}
.lgc-cookies__cat small{display:block;opacity:.75;font-size:.9em}
.lgc-cookies__switch{position:relative;flex:0 0 42px;height:24px}
.lgc-cookies__switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.lgc-cookies__switch span{position:absolute;inset:0;border-radius:24px;background:#ccc;transition:background .2s;pointer-events:none}
.lgc-cookies__switch span:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s}
.lgc-cookies__switch input:checked+span{background:var(--lgcc-color)}
.lgc-cookies__switch input:checked+span:after{transform:translateX(18px)}
.lgc-cookies__switch input:disabled+span{opacity:.55}
.lgc-cookies__switch input:focus-visible+span{outline:2px solid var(--lgcc-color);outline-offset:2px}

/* Encarts bas gauche / bas droite */
.lgc-cookies--corner{right:auto;max-width:440px}
.lgc-cookies--corner-right{left:auto;max-width:440px}
:is(.lgc-cookies--corner,.lgc-cookies--corner-right) .lgc-cookies__actions{display:grid;grid-template-columns:1fr 1fr}
:is(.lgc-cookies--corner,.lgc-cookies--corner-right) [data-lgc-action="refuse"]{order:1}
:is(.lgc-cookies--corner,.lgc-cookies--corner-right) [data-lgc-action="accept"]{order:2}
:is(.lgc-cookies--corner,.lgc-cookies--corner-right) :is(.lgc-cookies__btn--link,[data-lgc-action="save"]){order:3;grid-column:1/-1;margin:0}
:is(.lgc-cookies--corner,.lgc-cookies--corner-right) .lgc-cookies__btn--link{justify-self:center}

/* Fenêtre centrée */
.lgc-cookies--center{top:0;display:flex;align-items:center;justify-content:center;background:var(--lgcc-overlay);transform:none}
.lgc-cookies--center[hidden]{display:none}
.lgc-cookies--center .lgc-cookies__box{max-width:560px;max-height:90vh;overflow:auto}
html.lgc-cookies-open:has(.lgc-cookies--center){overflow:hidden}

/* Bouton flottant */
.lgc-cookies-fab{position:fixed;z-index:99998;bottom:16px;left:16px;display:flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border:var(--lgcc-bw,1px) solid var(--lgcc-bc,#138f8c);border-radius:50%;background:var(--lgcc-bg,#fff);-webkit-backdrop-filter:blur(var(--lgcc-blur,0px));backdrop-filter:blur(var(--lgcc-blur,0px));color:var(--lgcc-color,#138f8c);box-shadow:var(--lgcc-fab-shadow,none);cursor:pointer;transition:transform .2s}
.lgc-cookies-fab--right{left:auto;right:16px}
.lgc-cookies-fab[hidden]{display:none}
.lgc-cookies-fab:hover{transform:scale(1.08) rotate(-12deg)}
.lgc-cookies-fab:focus-visible{outline:2px solid var(--lgcc-color,#138f8c);outline-offset:3px}
.lgc-cookies-fab .lgc-cookies__icon{width:24px;height:24px}

@media (max-width:640px){
  .lgc-cookies{padding:10px}
  .lgc-cookies__box{padding:16px}
  .lgc-cookies__actions{flex-direction:column-reverse;align-items:stretch}
  .lgc-cookies__btn--link{margin:0;text-align:center}
}
