.privacy-settings-link{appearance:none;background:none;border:0;padding:0;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}
.privacy-footer{margin:2rem 0;font-size:.9rem}
dialog.privacy-dialog{width:min(640px,calc(100vw - 24px));max-width:none;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:24px;box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;border:1px solid #b88b79;border-radius:22px;background:#fffaf7;color:#3a2e2a;box-shadow:0 20px 70px #3a2e2a40;font:1rem/1.55 var(--font-body,Arial,sans-serif);text-align:left}
.privacy-dialog:not([open]){display:none}
.privacy-dialog::backdrop{background:rgba(58,46,42,.3)}
html:has(.privacy-dialog[open]){overflow:hidden}
.privacy-dialog h2{font:600 1.65rem/1.2 var(--font-display,Georgia,serif);margin:0 0 .8rem;color:#3a2e2a}
.privacy-dialog p{margin:.65rem 0}
.privacy-dialog a{color:#704331;text-decoration:underline;text-underline-offset:.15em}
.privacy-actions{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-top:1.2rem}
:is(.privacy-dialog,.privacy-banner) .privacy-button{appearance:none;display:block;min-width:0;min-height:44px;padding:.75rem 1rem;border:1px solid #ae7564;border-radius:999px;background:#d9a79a;color:#3a2e2a;font:600 1rem/1.3 var(--font-body,Arial,sans-serif);cursor:pointer;text-align:center;white-space:normal}
:is(.privacy-dialog,.privacy-banner) .privacy-button:hover{background:#cf998a}
:is(.privacy-dialog,.privacy-banner) .privacy-button.secondary{background:#fffaf7}
:is(.privacy-dialog,.privacy-banner) .privacy-button.secondary:hover{background:#f3e4dc}
.privacy-settings-action,.privacy-save{grid-column:1/-1}
.privacy-dialog [hidden]{display:none!important}
.privacy-details{margin:1rem 0}
.privacy-category{border:1px solid #b88b79;border-radius:14px;padding:1rem;margin:.8rem 0}
.privacy-category>label{display:flex;align-items:center;gap:.6rem;font-weight:700;cursor:pointer}
.privacy-category input{width:20px;height:20px;accent-color:#704331;flex:none}
.privacy-category summary{cursor:pointer;margin:.6rem 0;color:#704331}
.privacy-category dl{font-size:.9rem;margin:.5rem 0}
.privacy-category dt{font-weight:700;margin-top:.6rem}
.privacy-category dd{margin:0}
.privacy-note{font-size:.85rem;color:#6f5c55}
.privacy-dialog :focus-visible,.privacy-settings-link:focus-visible{outline:3px solid #704331;outline-offset:3px}
@media(max-width:380px){dialog.privacy-dialog{padding:18px}.privacy-actions{grid-template-columns:1fr}.privacy-dialog h2{font-size:1.45rem}}
@media(prefers-reduced-motion:reduce){.privacy-dialog,.privacy-dialog *{scroll-behavior:auto!important;transition:none!important}}

.privacy-banner{position:fixed;z-index:9000;left:16px;right:16px;bottom:max(12px,env(safe-area-inset-bottom));max-height:45dvh;overflow-y:auto;overscroll-behavior:contain;display:flex;align-items:center;gap:1.5rem;padding:16px 20px;border:1px solid #b88b79;border-radius:18px;background:#fffaf7;color:#3a2e2a;box-shadow:0 8px 30px #3a2e2a25;font:14px/1.45 var(--font-body,Arial,sans-serif)}
.privacy-banner h2{font:600 1.1rem/1.25 var(--font-display,Georgia,serif);margin:0 0 .3rem;color:#3a2e2a}
.privacy-banner p{margin:0}.privacy-banner a{color:#704331;text-decoration:underline}.privacy-banner .privacy-actions{flex:0 0 auto;display:flex;gap:.5rem;margin:0}.privacy-banner .privacy-button{font-size:.875rem}
.privacy-banner :focus-visible{outline:3px solid #704331;outline-offset:3px}
@media(max-width:900px){.privacy-banner{display:block;left:8px;right:8px;padding:12px;font-size:12px}.privacy-banner .privacy-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:.6rem}.privacy-banner [data-banner-settings]{grid-column:1/-1}.privacy-banner .privacy-button{font-size:.8rem;padding:.55rem}}

.privacy-banner[hidden]{display:none}
