/* Shared IG SAFE information dialog and icon, Web + app. */
.igsafe-header-info { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; }
.site-header .igsafe-header-info { width: 2.8rem; min-width: 2.8rem; height: 2.8rem; padding: 0; }
.app-header-actions .igsafe-header-info { width: 48px; min-width: 48px; height: 48px; padding: 0; }
.igsafe-header-info svg { display: block; width: 21px; height: 21px; }
.igsafe-info-modal[hidden] { display: none !important; }
.igsafe-info-modal { position: fixed; inset: 0; z-index: 2147483000; display: grid; place-items: center; padding: max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left)); background: rgb(20 15 17 / 65%); }
.igsafe-info-dialog { box-sizing: border-box; width: min(100%, 560px); max-height: min(84dvh, 720px); overflow: auto; overscroll-behavior: contain; padding: 22px; color: #282421; background: #fffaf1; border: 2px solid #a20b24; border-radius: 18px; box-shadow: 0 16px 60px rgb(0 0 0 / 25%); -webkit-overflow-scrolling: touch; }
.igsafe-info-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 16px; }
.igsafe-info-head h2 { margin: 0; color: #8f1025; font-size: clamp(19px, 4vw, 24px); line-height: 1.25; }
.igsafe-info-close { flex: 0 0 42px; min-width: 42px; min-height: 42px; color: inherit; background: transparent; border: 1px solid #bba99c; border-radius: 12px; font: inherit; font-size: 26px; cursor: pointer; }
.igsafe-info-dialog .igsafe-info-copy { font-size: 16px; line-height: 1.6; }
.igsafe-info-dialog p { margin: 0 0 12px; }
.igsafe-info-dialog p:last-child { margin-bottom: 0; }
.igsafe-info-dialog a { color: #9a1230; text-decoration: underline; }
.igsafe-info-dialog :focus-visible, .igsafe-header-info:focus-visible { outline: 3px solid #b40e2e; outline-offset: 3px; }
html[data-theme="dark"] .igsafe-info-dialog { color: #f6eee4; background: #211b1a; border-color: #ef6674; }
html[data-theme="dark"] .igsafe-info-head h2, html[data-theme="dark"] .igsafe-info-dialog a { color: #ff9ba5; }
html[data-theme="dark"] .igsafe-info-close { border-color: #83706b; }
body.igsafe-info-open { overflow: hidden; }
@media (max-width: 700px) { .site-header .igsafe-header-info { width: 42px; min-width: 42px; height: 42px; } .igsafe-info-dialog { padding: 18px; } }
@media (prefers-reduced-motion: reduce) { .igsafe-info-modal, .igsafe-info-dialog { scroll-behavior: auto; } }
