.ms-privacy-link { background:none; border:0; padding:0; text-decoration:underline; color:inherit; font:inherit; cursor:pointer; }
.ms-privacy-banner[hidden], .ms-privacy-link[hidden] { display:none !important; }
.ms-privacy-banner { position:fixed; z-index:1060; bottom:0; left:0; right:0; display:flex; align-items:center; gap:1.5rem; padding:1.25rem max(1.25rem, calc((100vw - 1200px)/2)); background:#f7f1e7; color:#261f19; border-top:3px solid #d8b36a; box-shadow:0 -4px 24px #173d2d22; font-family:Karla,Arial,sans-serif; }
.ms-privacy-banner h2, .ms-privacy-dialog h2 { font-family:Fraunces,Georgia,serif; font-size:1.4rem; color:#173d2d; margin:0 0 .6rem; }
.ms-privacy-banner p { margin:0 0 .5rem; max-width:70ch; }
.ms-privacy-actions { display:flex; flex-wrap:wrap; gap:.65rem; flex-shrink:0; }
.ms-privacy-actions button { font:inherit; padding:.7rem 1rem; border:1px solid #173d2d; border-radius:6px; background:#fffdf8; color:#173d2d; cursor:pointer; }
.ms-privacy-actions [data-ms-privacy-dismiss] { background:#173d2d; color:#fffdf8; }
.ms-privacy-banner a, .ms-privacy-dialog a { color:#173d2d; text-decoration:underline; }
.ms-privacy-dialog { max-width:600px; width:calc(100% - 2rem); max-height:85vh; padding:1.75rem; overflow:auto; border:1px solid #d8b36a; border-top:3px solid #d8b36a; border-radius:10px; background:#fffdf8; color:#261f19; font-family:Karla,Arial,sans-serif; }
.ms-privacy-dialog::backdrop { background:#102f2280; }
.ms-privacy-dialog h3 { font-size:1.05rem; color:#173d2d; }
.ms-privacy-dialog p { line-height:1.55; }
.ms-privacy-link:focus-visible, .ms-privacy-actions button:focus-visible, .ms-privacy-dialog a:focus-visible, .ms-privacy-banner a:focus-visible { outline:3px solid #d8b36a; outline-offset:3px; }
@media(max-width:760px) { .ms-privacy-banner { flex-direction:column; align-items:stretch; gap:.75rem; padding:1rem; max-height:60vh; overflow:auto; } .ms-privacy-actions button { flex:1; } }
