.region-trigger { display: inline-flex; align-items: center; gap: 8px; margin: 16px 0 24px; padding: 10px 0; min-height: 44px; border: 0; background: transparent; color: #526b20; font: inherit; font-size: .85rem; text-align: left; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.region-trigger[hidden] { display: none; }
.region-dialog { box-sizing: border-box; width: calc(100% - 32px); max-width: 440px; max-height: calc(100dvh - 32px); margin: auto; padding: 32px 24px; overflow-y: auto; border: 1px solid #dce4cf; border-radius: 24px; background: #faf9f3; color: #173d16; font-family: 'Inter', sans-serif; line-height: 1.6; box-shadow: 0 20px 70px #102e1340; }
.region-dialog::backdrop { background: #0d280fe0; }
body:has(.region-dialog[open]) { overflow: hidden; }
.region-dialog img { display: block; width: 72px; height: 72px; object-fit: contain; margin-bottom: 20px; }
.region-dialog h2 { margin: 0 0 16px; font-size: 1.65rem; line-height: 1.2; letter-spacing: -.02em; }
.region-dialog p { margin: 12px 0; font-size: .95rem; color: #52604d; }
.region-dialog .region-note { font-size: .8rem; }
.region-dialog button, .region-dialog a { box-sizing: border-box; display: block; width: 100%; min-height: 48px; margin-top: 12px; padding: 12px 16px; border: 0; border-radius: 14px; font: inherit; font-size: .9rem; font-weight: 600; text-align: center; text-decoration: none; cursor: pointer; }
.region-dialog button { color: #173617; background: #dfe520; }
.region-dialog a { color: white; background: #173d16; }
.region-dialog .region-skip { color: #52604d; background: transparent; font-weight: 400; }
.region-dialog [hidden] { display: none; }
.region-dialog button:disabled { opacity: .65; cursor: wait; }
.region-dialog :focus-visible, .region-trigger:focus-visible { outline: 3px solid #5f7a1b; outline-offset: 3px; }
