.cookie-banner { position:fixed; left:50%; bottom:18px; z-index:9990; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:22px; align-items:center; width:min(1080px,calc(100% - 28px)); padding:18px 20px; background:#fff; border:1px solid var(--lmm-line); border-radius:18px; box-shadow:0 18px 60px rgba(35,23,44,.2); transform:translateX(-50%); }
.cookie-banner__copy strong { display:block; margin-bottom:3px; }
.cookie-banner__copy p { margin:0; font-size:.88rem; }
.cookie-banner__copy a { color:var(--lmm-accent); font-size:.82rem; font-weight:760; }
.cookie-banner__actions { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; }
.cookie-banner__actions .btn { min-height:42px; padding:9px 14px; font-size:.84rem; }
.cookie-dialog { width:min(680px,calc(100% - 24px)); padding:0; color:var(--lmm-text); background:#fff; border:0; border-radius:20px; box-shadow:0 24px 80px rgba(25,16,31,.28); }
.cookie-dialog::backdrop { background:rgba(20,14,24,.5); backdrop-filter:blur(4px); }
.cookie-dialog__header { display:flex; gap:18px; align-items:flex-start; justify-content:space-between; padding:24px 26px 8px; }
.cookie-dialog__header h2 { margin:0; font-size:1.85rem; }
.cookie-dialog > p { padding:0 26px; }
.cookie-options { display:grid; gap:10px; padding:12px 26px; }
.cookie-option { display:flex; gap:18px; align-items:center; justify-content:space-between; padding:16px; border:1px solid var(--lmm-line); border-radius:14px; cursor:pointer; }
.cookie-option span { display:block; }
.cookie-option strong,.cookie-option small { display:block; }
.cookie-option small { margin-top:3px; color:var(--lmm-muted); }
.cookie-option input { width:22px; height:22px; accent-color:var(--lmm-accent); }
.cookie-option--locked { background:#faf9fb; cursor:default; }
.cookie-dialog__actions { display:flex; justify-content:flex-end; gap:10px; padding:16px 26px 26px; }
.footer-link-button { display:block; padding:0; color:inherit; cursor:pointer; background:transparent; border:0; text-align:left; font:inherit; }
.footer-link-button:hover { text-decoration:underline; }
@media (max-width:760px) {
  .cookie-banner { grid-template-columns:1fr; bottom:10px; padding:16px; }
  .cookie-banner__actions { justify-content:stretch; }
  .cookie-banner__actions .btn { flex:1; }
  .cookie-dialog__actions { flex-direction:column-reverse; }
  .cookie-dialog__actions .btn { width:100%; }
}
