#privacy-notice { position: fixed; z-index: 80; right: max(24px, env(safe-area-inset-right)); bottom: max(24px, env(safe-area-inset-bottom)); width: min(420px, calc(100vw - 48px)); padding: 24px; border: 1px solid #705014; border-radius: 6px; background: #14171e; box-shadow: 0 18px 48px rgba(0,0,0,.38); color: #f2f1ed; font: 14px/1.5 Archivo, 'Helvetica Neue', Helvetica, sans-serif; letter-spacing: 0; opacity: 0; transform: translateY(18px); }
#privacy-notice[hidden] { display: none; }
#privacy-notice.is-visible { animation: privacy-notice-in 760ms cubic-bezier(.22,.61,.36,1) forwards; }
@keyframes privacy-notice-in { to { opacity: 1; transform: translateY(0); } }
.privacy-notice-inner { display: grid; gap: 20px; }
#privacy-notice h2 { margin: 0 0 10px; color: #fff; font: 600 20px/1.25 Archivo, 'Helvetica Neue', Helvetica, sans-serif; letter-spacing: 0; }
#privacy-notice p { margin: 0; color: #d6dae0; font-size: 14px; }
#privacy-notice .privacy-accent { color: #d4af77; font-weight: 600; }
#privacy-notice a { color: #d4af77; text-decoration: underline; text-underline-offset: 3px; }
#privacy-notice a:hover { color: #ecce9f; }
.privacy-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.privacy-actions button { min-height: 48px; padding: 10px 12px; border: 1px solid #a0a6af; border-radius: 3px; color: #fff; background: transparent; font: 600 13px/1.35 Archivo, 'Helvetica Neue', Helvetica, sans-serif; cursor: pointer; letter-spacing: 0; }
.privacy-actions button:hover { background: #30343e; }
.privacy-actions [data-privacy-choice="yes"] { border-color: transparent; background-color: #b58a4b; background-image: linear-gradient(180deg,#c19e64 0%,#ad7d3d 100%); color: #14171E; }
.privacy-actions [data-privacy-choice="yes"]:hover { background-color: #bb8c4b; background-image: linear-gradient(180deg,#d0b078 0%,#b88647 100%); }
.privacy-actions button:focus-visible, #privacy-notice a:focus-visible { outline: 2px solid #d4af77; outline-offset: 3px; }
.privacy-settings { min-height: 44px; border: 0; padding: 8px 0; color: #D6DAE0; background: transparent; font: inherit; font-size: 13.5px; letter-spacing: 0; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.privacy-settings:focus-visible { outline: 2px solid #d4af77; outline-offset: 3px; }
@media (max-width: 480px) {
  #privacy-notice { right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); width: calc(100vw - 24px); padding: 20px; }
  #privacy-notice h2 { font-size: 18px; }
  .privacy-actions button { padding-inline: 8px; font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  #privacy-notice.is-visible { animation: none; opacity: 1; transform: none; }
}
