.privacy-settings { margin:20px 0; padding:0; }
.privacy-setting-row { display:flex; align-items:center; min-height:56px; gap:4px; padding:0 12px; border:1px solid #ece8ed; border-radius:14px; background:var(--mobile-surface,#fff); }
.privacy-setting-row strong { font-size:16px; }
.privacy-help-button { display:grid; place-items:center; width:44px; height:44px; padding:0; border:0; background:transparent; color:inherit; }
.privacy-help-button span { width:21px; height:21px; border:1px solid currentColor; border-radius:50%; font:inherit; font-weight:600; font-size:14px; line-height:20px; }
.privacy-switch { display:flex; align-items:center; margin-left:auto; width:46px; min-width:46px; height:44px; padding:0 3px; border:0; border-radius:0; background:transparent; position:relative; cursor:pointer; }
.privacy-switch::before { content:""; position:absolute; inset:8px 0; border-radius:20px; background:#c5c3cb; }
.privacy-switch span { position:relative; width:22px; height:22px; border-radius:50%; background:#fff; box-shadow:0 1px 3px #0002; transition:transform .15s; }
.privacy-switch[aria-checked="true"]::before { background:#d82f86; }
.privacy-switch[aria-checked="true"] span { transform:translateX(18px); }
.privacy-switch:disabled { opacity:.6; }
.privacy-settings :is(button,a):focus-visible { outline:3px solid #a72475; outline-offset:3px; }
.privacy-notifications-link { display:flex; align-items:center; min-height:44px; font-size:14px; color:#a72475; }
#profilePrivacyStatus:empty { display:none; }
.privacy-help-dialog { width:min(420px,calc(100% - 32px)); border:1px solid #eee; border-radius:24px; padding:24px; color:#17131c; background:#fff; }
.privacy-help-dialog::backdrop { background:#160b244f; }
.privacy-help-dialog p { line-height:1.55; color:#625d68; }
.privacy-help-dialog h3 { font-size:16px; margin-bottom:6px; }
.privacy-help-dialog .button { width:100%; min-height:44px; }
@media(prefers-reduced-motion:reduce) { .privacy-switch span { transition:none; } }
.privacy-settings[hidden], .privacy-notice[hidden] { display:none; }
.privacy-settings h3 { margin:0 0 12px; }
.privacy-settings p,.privacy-notice p { line-height:1.5; overflow-wrap:anywhere; }
.privacy-settings summary { cursor:pointer; min-height:44px; padding-block:12px; font-weight:700; }
.privacy-request { display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:14px 0; border-top:1px solid var(--border,#ddd); }
.privacy-request > a { flex:1 1 100%; display:flex; align-items:center; gap:10px; overflow-wrap:anywhere; color:inherit; }
.privacy-request .mini-avatar { width:40px; height:40px; flex:0 0 40px; }
.privacy-request button { min-height:44px; }
.privacy-notice { padding:20px; margin-top:20px; border:var(--mobile-border,1px solid #ddd); border-radius:20px; text-align:center; }
.privacy-notice a { display:inline-block; padding:12px; }
#privacyConfirmDialog { max-width:min(480px,calc(100vw - 32px)); }
#privacyConfirmDialog .button-row { flex-wrap:wrap; }
.community-reference-main { width:min(680px,calc(100% - 32px)); margin:32px auto; overflow-wrap:anywhere; }
.community-reference-main img { max-width:100%; max-height:60vh; object-fit:contain; border-radius:20px; }
.community-reference-main p { white-space:pre-wrap; }
