#privacy-controls { font: 16px/1.5 system-ui, sans-serif; color: #25343b; }
#privacy-controls [hidden] { display: none !important; }
#privacy-controls [data-privacy-panel] { position: fixed; z-index: 2147483000; bottom: 16px; left: 16px; right: 16px; max-width: 700px; max-height: 80vh; overflow: auto; background: #fff; border: 1px solid #bacbd1; border-radius: 12px; box-shadow: 0 6px 36px #0003; padding: 22px; }
#privacy-controls h2 { font-size: 22px; margin: 0 0 10px; }
#privacy-controls p { margin: 10px 0; }
#privacy-controls a { color: #126477; text-decoration: underline; }
#privacy-controls .privacy-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
#privacy-controls button { color: #fff; background: #126477; border: 2px solid #126477; border-radius: 6px; padding: 10px 16px; cursor: pointer; font: inherit; }
#privacy-controls button:focus-visible, #privacy-controls a:focus-visible, #privacy-controls input:focus-visible { outline: 3px solid #bb7400; outline-offset: 3px; }
#privacy-controls [data-privacy-open] { display: block; position: static; margin: 12px auto; padding: 4px 8px; font-size: 13px; color: #126477; background: transparent; border-color: transparent; text-decoration: underline; }
#privacy-controls label { display: block; padding: 5px 0; }
#privacy-controls input { margin-right: 8px; }
#privacy-controls [data-privacy-error] { color: #9c2525; }
@media (max-width: 500px) { #privacy-controls [data-privacy-panel] { bottom: 8px; left: 8px; right: 8px; padding: 16px; } #privacy-controls .privacy-actions button { flex: 1 1 100%; } }
@media print { #privacy-controls { display: none; } }
