/* JAVSPY AGE GATE V3G
   Keep the existing age-gate structure. Only restyle it to JAVSPY flat monochrome.
   No extra logo, no structural redesign.
*/

.vp-age-gate{
  background:rgba(0,0,0,.92)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}

.vp-age-card{
  width:min(520px,calc(100vw - 28px))!important;
  padding:0!important;
  border:1px solid #242424!important;
  border-radius:0!important;
  background:#080808!important;
  color:#e8e8e8!important;
  box-shadow:0 26px 70px rgba(0,0,0,.68)!important;
}

/* Remove any decorative/legacy red surfaces */
.vp-age-card,
.vp-age-card *{
  --accent:#fff!important;
  --danger:#777!important;
  --red:#777!important;
}

.vp-age-top{
  padding:24px 26px 0!important;
  border:0!important;
  background:transparent!important;
}

.vp-age-kicker{
  color:#5d5d5d!important;
  font:700 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}

.vp-age-badge{
  min-width:42px!important;
  height:27px!important;
  padding:0 8px!important;
  border:1px solid #292929!important;
  border-radius:0!important;
  background:#0c0c0c!important;
  color:#9b9b9b!important;
  box-shadow:none!important;
  font:800 11px/1 ui-monospace,SFMono-Regular,Menlo,monospace!important;
}

.vp-age-card h1{
  margin:14px 26px 0!important;
  color:#f1f1f1!important;
  font-size:29px!important;
  line-height:1.08!important;
  font-weight:800!important;
  letter-spacing:-.03em!important;
}

.vp-age-intro{
  margin:11px 26px 0!important;
  color:#808080!important;
  font-size:14px!important;
  line-height:1.55!important;
}

.vp-age-legal-scroll{
  max-height:170px!important;
  margin:20px 26px 0!important;
  padding:14px 15px!important;
  overflow:auto!important;
  border:1px solid #1d1d1d!important;
  border-radius:0!important;
  background:#060606!important;
  color:#696969!important;
  box-shadow:none!important;
  scrollbar-width:thin!important;
  scrollbar-color:#333 #090909!important;
}

.vp-age-legal-scroll p{
  margin:0 0 9px!important;
  color:#707070!important;
  font-size:12px!important;
  line-height:1.5!important;
}

.vp-age-legal-scroll p:last-child{margin-bottom:0!important}
.vp-age-legal-scroll strong{color:#aaa!important}

.vp-age-legal-links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px 14px!important;
  margin:14px 26px 0!important;
  padding:0!important;
}

.vp-age-legal-links a{
  color:#606060!important;
  font-size:11px!important;
  text-decoration:none!important;
  border:0!important;
  background:transparent!important;
}

.vp-age-legal-links a:hover{
  color:#fff!important;
  background:transparent!important;
}

.vp-age-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,.52fr)!important;
  gap:8px!important;
  padding:21px 26px 26px!important;
}

.vp-age-enter,
.vp-age-exit{
  min-height:46px!important;
  padding:0 16px!important;
  border-radius:0!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:800!important;
  transition:none!important;
}

/* Primary: flat white, never red */
.vp-age-enter{
  border:1px solid #e6e6e6!important;
  background:#e6e6e6!important;
  color:#050505!important;
}

.vp-age-enter:hover,
.vp-age-enter:focus,
.vp-age-enter:active{
  border-color:#fff!important;
  background:#fff!important;
  color:#050505!important;
  box-shadow:none!important;
}

/* Secondary: flat black/gray */
.vp-age-exit{
  border:1px solid #2a2a2a!important;
  background:#0a0a0a!important;
  color:#747474!important;
}

.vp-age-exit:hover,
.vp-age-exit:focus,
.vp-age-exit:active{
  border-color:#505050!important;
  background:#101010!important;
  color:#ddd!important;
  box-shadow:none!important;
}

.vp-age-card > small{
  display:block!important;
  margin:-10px 26px 22px!important;
  color:#494949!important;
  font-size:10px!important;
  line-height:1.35!important;
}

/* Kill inherited red hover/focus from legacy theme */
.vp-age-gate button,
.vp-age-gate a{
  outline:none!important;
}

.vp-age-gate button:hover,
.vp-age-gate button:focus,
.vp-age-gate button:active,
.vp-age-gate a:hover,
.vp-age-gate a:focus,
.vp-age-gate a:active{
  text-shadow:none!important;
  box-shadow:none!important;
}

@media(max-width:640px){
  .vp-age-card h1{font-size:25px!important}
  .vp-age-top{padding:20px 20px 0!important}
  .vp-age-card h1{margin-left:20px!important;margin-right:20px!important}
  .vp-age-intro{margin-left:20px!important;margin-right:20px!important}
  .vp-age-legal-scroll{margin-left:20px!important;margin-right:20px!important}
  .vp-age-legal-links{margin-left:20px!important;margin-right:20px!important}
  .vp-age-actions{
    grid-template-columns:1fr!important;
    padding:20px!important;
  }
  .vp-age-card > small{margin-left:20px!important;margin-right:20px!important}
}
