html.web-age-pending { overflow: hidden !important; background: #111218; }
html.web-age-pending body { overflow: hidden !important; }
html.web-age-pending body > :not(#web-age-gate) { visibility: hidden !important; pointer-events: none !important; }
#web-age-gate { position: fixed; inset: 0; z-index: 2147483646; display: flex; box-sizing: border-box; padding: 20px; overflow-y: auto; background: #111218; color: #f5f5f8; font-family: system-ui, sans-serif; }
.web-age-dialog { box-sizing: border-box; width: 100%; max-width: 380px; margin: auto; padding: 28px 24px 24px; border: 1px solid #34363f; border-radius: 20px; background: #1b1c24; text-align: center; box-shadow: 0 16px 48px #0003; }
.web-age-mark { display: inline-flex; align-items: center; justify-content: center; min-width: 58px; height: 40px; margin-bottom: 16px; border: 1px solid #74778d; border-radius: 12px; color: #b6caff; font-size: 20px; font-weight: 650; }
.web-age-dialog h1 { margin: 0; font-size: 21px; line-height: 1.3; font-weight: 650; color: #f5f5f8; }
.web-age-dialog p { margin: 12px 0 24px; color: #b5b5c2; font-size: 14px; line-height: 1.5; }
.web-age-actions { display: grid; grid-template-columns: 1fr 1.65fr; gap: 10px; }
.web-age-dialog button { min-height: 46px; padding: 10px 12px; border: 1px solid #515360; border-radius: 11px; background: transparent; color: #ededf3; font: 600 14px/1.35 system-ui,sans-serif; cursor: pointer; touch-action: manipulation; }
#web-age-yes { background: linear-gradient(110deg,#5cc8ff,#9b5cf6); border: 0; color: #111322; }
.web-age-dialog button:focus-visible { outline: 2px solid #a7c8ff; outline-offset: 3px; }
.web-age-dialog button:hover { filter: brightness(1.1); }
.web-age-dialog [hidden] { display: none !important; }
@media (max-width: 360px) { .web-age-dialog { padding: 24px 18px 20px; } .web-age-dialog h1 { font-size: 20px; } }

.web-age-dialog:focus { outline: none; }
