.privacy-modal, .privacy-page { font-family: Arial, sans-serif; color: #222; letter-spacing: 0; }
.privacy-modal-layer { position: fixed; inset: 0; z-index: 2000; background: rgba(0, 0, 0, .48); }
.privacy-modal-layer.privacy-modal-native { display: contents; }
.privacy-modal { display: block; position: fixed; inset: 0; margin: auto; width: calc(100% - 32px); max-width: 560px; height: fit-content; max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); overflow-y: auto; box-sizing: border-box; padding: 24px; border: 1px solid #abb6bd; border-radius: 8px; background: #fff; box-shadow: 0 12px 40px rgba(0, 0, 0, .22); }
.privacy-modal::backdrop { background: rgba(0, 0, 0, .48); }
.privacy-modal:not([open]) { display: none; }
.privacy-modal-open { overflow: hidden; }
.privacy-modal h2 { font-size: 22px; line-height: 1.3; margin: 0 0 16px; }
.privacy-modal p, .privacy-page p { line-height: 1.55; overflow-wrap: anywhere; }
.privacy-modal p { margin: 12px 0; }
.privacy-modal a, .privacy-page a { color: #075899; text-decoration: underline; }
.privacy-modal .privacy-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
.privacy-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 16px 0 0; }
.privacy-button { font: inherit; font-weight: 600; color: #183344; background: #fff; border: 1px solid #526873; border-radius: 4px; padding: 12px 18px; cursor: pointer; min-height: 44px; white-space: normal; overflow-wrap: anywhere; }
.privacy-button:hover { background: #e9eff2; }
.privacy-button:focus-visible, .privacy-page a:focus-visible, .privacy-modal a:focus-visible, .privacy-modal h2:focus-visible { outline: 3px solid #005ea8; outline-offset: 3px; }
.privacy-button:disabled { opacity: .6; cursor: not-allowed; }
.privacy-feedback:empty { display: none; }
.privacy-feedback { color: #9c1923; }
body.privacy-page { margin: 0; background: #fff; }
.privacy-page header, .privacy-page main, .privacy-page footer { max-width: 800px; margin: auto; padding: 24px; box-sizing: border-box; }
.privacy-page header { border-bottom: 1px solid #d5dce1; display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
.privacy-page header img { width: 64px; height: 64px; object-fit: contain; }
.privacy-page h1 { font-size: 26px; line-height: 1.25; overflow-wrap: anywhere; margin: 12px 0 24px; }
.privacy-page h2 { font-size: 20px; }
.privacy-page .privacy-status { border-left: 4px solid #28704a; background: #f2f7f3; padding: 12px 16px; }
.privacy-page .privacy-error { border-left-color: #9c1923; background: #fff4f4; }
.privacy-page footer { border-top: 1px solid #d5dce1; }
@media (max-width: 575px) {
    .privacy-modal { padding: 20px; }
    .privacy-modal .privacy-actions { grid-template-columns: minmax(0, 1fr); }
    .privacy-actions { flex-direction: column; }
    .privacy-button { width: 100%; }
    .privacy-page header, .privacy-page main, .privacy-page footer { padding: 20px 16px; }
}
