.af-consent { position:fixed; z-index:10000; inset:auto 16px 16px; max-width:680px; margin:auto; padding:24px; box-sizing:border-box; border:1px solid #77756e; border-radius:16px; background:#f1eee6; color:#101210; box-shadow:0 12px 48px #0005; font:15px/1.5 Helvetica,Arial,sans-serif; max-height:85dvh; overflow:auto; }
.af-consent[hidden], .af-consent [hidden] { display:none !important; }
.af-consent h2 { margin:0 0 8px; font:600 21px/1.2 Helvetica,Arial,sans-serif; }
.af-consent p { margin:0 0 16px; font-size:15px; }
.af-consent a { color:#873419; text-decoration:underline; }
.af-consent-actions { display:flex; flex-wrap:wrap; gap:10px; }
.af-consent button { min-height:44px; padding:10px 18px; border:1px solid #101210; border-radius:24px; background:#f1eee6; color:#101210; font:600 14px/1.3 Helvetica,Arial,sans-serif; cursor:pointer; }
.af-consent button:active { transform:scale(.97); }
.af-consent :focus-visible, .af-cookie-settings:focus-visible { outline:3px solid #a8401f; outline-offset:3px; }
.af-consent label { display:flex; gap:12px; align-items:flex-start; margin:16px 0; cursor:pointer; }
.af-consent input { width:20px; height:20px; flex-shrink:0; accent-color:#101210; }
.af-footer-legal { flex:0 1 auto; display:flex; flex-direction:column; align-items:flex-start; gap:4px; }
.af-footer-legal a, .af-cookie-settings { color:#e5613c; text-decoration:underline; text-underline-offset:3px; }
.af-cookie-settings { display:inline-block; margin:0; padding:0; background:none; border:0; font:inherit; line-height:inherit; text-align:left; cursor:pointer; transition:color 150ms ease; }
@media (hover:hover) and (pointer:fine) { .af-cookie-settings:hover { color:#f4855f; } }
@media (pointer:coarse) { .af-footer-legal a, .af-cookie-settings { display:inline-flex; align-items:center; min-height:44px; } }
@media (max-width:480px) { .af-consent { inset:auto 8px 8px; padding:20px; } .af-consent-actions button { flex:1 1 120px; } }
