.gr-age-dialog { max-width:min(520px,calc(100vw - 32px)); padding:0; border:1px solid var(--gr-border-strong); border-radius:var(--gr-radius-card); background:var(--bg-elevated); color:var(--text); }
.gr-age-dialog::backdrop { background:color-mix(in srgb,var(--slate-880) 85%,transparent); backdrop-filter:blur(8px); }
.gr-age-dialog-surface { padding:32px; }
.gr-age-mark { display:inline-grid; place-items:center; width:64px; height:64px; border:1px solid var(--gr-border-strong); border-radius:16px; background:var(--bg-elevated); color:var(--text); font-size:26px; font-weight:750; }
.gr-age-dialog h2,.gr-age-restricted h2 { margin:20px 0 12px; font-size:24px; line-height:1.3; }
.gr-age-dialog p,.gr-age-restricted p { color:var(--muted-bright); font-size:15px; line-height:1.6; }
.gr-age-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.gr-age-actions .gr-button { flex:1 1 180px; justify-content:center; }
.gr-age-dialog button:focus-visible,.gr-age-restricted :is(button,a):focus-visible { outline:2px solid var(--gr-primary); outline-offset:4px; }
.gr-age-restricted { position:relative; isolation:isolate; overflow:hidden; display:grid; place-items:center; min-height:360px; margin:32px auto; border:1px solid var(--gr-border-strong); border-radius:var(--gr-radius-card); background:var(--bg-elevated); text-align:center; }
.gr-age-poster { position:absolute; inset:-24px; width:calc(100% + 48px); height:calc(100% + 48px); object-fit:cover; filter:blur(24px); opacity:.2; pointer-events:none; }
.gr-age-restricted-copy { position:relative; max-width:560px; padding:40px 24px; }
.gr-age-restricted-copy .gr-button { margin:12px 4px 0; }
@media (max-width:600px) { .gr-age-dialog-surface { padding:24px; } .gr-age-dialog h2,.gr-age-restricted h2 { font-size:21px; } }
