/* AngelBoy V162 - composición global Amor Virtual
   Paleta solicitada: #FF4D6D, #FFFFFF, #2B0D17.
   Aplica a Plantillas, Planes, IA, Mis páginas, Soporte/Sobre nosotros,
   Preguntas frecuentes, Privacidad, Términos, Reembolsos y footer. */
:root{
  --ab162-hot:#FF4D6D;
  --ab162-hot-2:#ff7a92;
  --ab162-hot-3:#ff9bad;
  --ab162-white:#FFFFFF;
  --ab162-wine:#2B0D17;
  --ab162-wine-2:#16060d;
  --ab162-black:#070305;
  --ab162-black-2:#0d0508;
  --ab162-glass:rgba(43,13,23,.72);
  --ab162-line:rgba(255,77,109,.34);
  --ab162-soft:rgba(255,77,109,.13);
  --ab162-shadow:0 28px 90px rgba(0,0,0,.46),0 0 44px rgba(255,77,109,.16);
}
html{scroll-behavior:smooth;}
body:not(.admin-area-v71){
  color:var(--ab162-white)!important;
  background:
    radial-gradient(circle at 15% 10%,rgba(255,77,109,.30),transparent 27%),
    radial-gradient(circle at 86% 16%,rgba(255,122,146,.18),transparent 30%),
    radial-gradient(circle at 48% 92%,rgba(255,77,109,.16),transparent 38%),
    linear-gradient(135deg,var(--ab162-black) 0%,var(--ab162-wine) 48%,#11030a 100%)!important;
  accent-color:var(--ab162-hot);
}
body:not(.admin-area-v71)::before{
  opacity:.55!important;
  filter:saturate(1.18) contrast(1.08)!important;
}
body:not(.admin-area-v71) main{
  background:
    linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.022) 1px,transparent 1px),
    radial-gradient(circle at 20% 15%,rgba(255,77,109,.09),transparent 32%),
    linear-gradient(180deg,rgba(43,13,23,.06),rgba(8,3,5,.20));
  background-size:96px 96px,96px 96px,auto,auto;
}

/* Header / navegación principal */
body:not(.admin-area-v71) .topbar.topbar-v20{
  background:rgba(7,3,5,.76)!important;
  border-bottom:1px solid rgba(255,77,109,.24)!important;
  box-shadow:0 18px 54px rgba(0,0,0,.42),0 0 34px rgba(255,77,109,.10)!important;
  backdrop-filter:blur(22px) saturate(1.35)!important;
  -webkit-backdrop-filter:blur(22px) saturate(1.35)!important;
}
body:not(.admin-area-v71) .brand-word span,
body:not(.admin-area-v71) .brand-word strong,
body:not(.admin-area-v71) .brand-word em{color:#fff!important;text-shadow:0 0 18px rgba(255,77,109,.48)!important;}
body:not(.admin-area-v71) .brand-mark,
body:not(.admin-area-v71) .footer-logo-mark{
  background:radial-gradient(circle at 35% 25%,#fff 0 8%,var(--ab162-hot-2) 24%,var(--ab162-hot) 62%,#9d1430 100%)!important;
  box-shadow:0 0 24px rgba(255,77,109,.66),0 0 52px rgba(255,77,109,.22)!important;
}
body:not(.admin-area-v71) .nav-v20>a:not(.btn),
body:not(.admin-area-v71) .nav-help,
body:not(.admin-area-v71) .lang-current,
body:not(.admin-area-v71) .currency-switch-v20{
  color:#fff!important;
  border-color:rgba(255,77,109,.22)!important;
  background:rgba(255,255,255,.045)!important;
}
body:not(.admin-area-v71) .nav-v20>a:not(.btn){
  position:relative;overflow:hidden;isolation:isolate;
}
body:not(.admin-area-v71) .nav-v20>a:not(.btn)::after{
  content:"";position:absolute;left:12px;right:12px;bottom:5px;height:2px;border-radius:999px;
  background:linear-gradient(90deg,transparent,var(--ab162-hot),transparent);
  transform:scaleX(0);transform-origin:center;transition:transform .24s ease;box-shadow:0 0 12px var(--ab162-hot);
}
body:not(.admin-area-v71) .nav-v20>a:not(.btn):hover,
body:not(.admin-area-v71) .nav-help:hover,
body:not(.admin-area-v71) .lang-current:hover,
body:not(.admin-area-v71) .currency-switch-v20 button.active{
  background:rgba(255,77,109,.18)!important;
  border-color:rgba(255,77,109,.58)!important;
  color:#fff!important;
  box-shadow:0 0 24px rgba(255,77,109,.20)!important;
}
body:not(.admin-area-v71) .nav-v20>a:not(.btn):hover::after{transform:scaleX(1);}
body:not(.admin-area-v71) .nav-v20 .plans-link-effect,
body:not(.admin-area-v71) .nav-v20 .btn.small{
  background:linear-gradient(135deg,var(--ab162-hot),#d71948)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  color:#fff!important;
  box-shadow:0 16px 38px rgba(255,77,109,.30),inset 0 1px 0 rgba(255,255,255,.20)!important;
}
body:not(.admin-area-v71) .lang-menu-v20{
  background:rgba(13,5,8,.96)!important;
  border-color:rgba(255,77,109,.34)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.52),0 0 28px rgba(255,77,109,.12)!important;
}

/* Botones e inputs globales */
body:not(.admin-area-v71) .btn,
body:not(.admin-area-v71) button:not(.menuBtn):not(.nav-help):not(.lang-current){
  background:linear-gradient(135deg,var(--ab162-hot),#cf173f)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#fff!important;
  box-shadow:0 16px 38px rgba(255,77,109,.28),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
body:not(.admin-area-v71) .btn.ghost,
body:not(.admin-area-v71) .btn.secondary,
body:not(.admin-area-v71) .ab104-btn.ghost,
body:not(.admin-area-v71) .ab104-btn.soft,
body:not(.admin-area-v71) .ab101-btn.secondary,
body:not(.admin-area-v71) .ab101-btn.dark{
  background:rgba(255,255,255,.065)!important;
  border:1px solid rgba(255,77,109,.28)!important;
  color:#fff!important;
  box-shadow:0 14px 34px rgba(0,0,0,.22)!important;
}
body:not(.admin-area-v71) .btn:hover,
body:not(.admin-area-v71) .ab104-btn:hover,
body:not(.admin-area-v71) .ab101-btn:hover{
  transform:translateY(-3px) scale(1.018)!important;
  box-shadow:0 24px 58px rgba(255,77,109,.36),0 0 34px rgba(255,77,109,.20)!important;
}
body:not(.admin-area-v71) input,
body:not(.admin-area-v71) textarea,
body:not(.admin-area-v71) select,
body:not(.admin-area-v71) .input,
body:not(.admin-area-v71) .ai126-input,
body:not(.admin-area-v71) .ai127-input{
  background:rgba(7,3,5,.72)!important;
  border-color:rgba(255,77,109,.38)!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
body:not(.admin-area-v71) input:focus,
body:not(.admin-area-v71) textarea:focus,
body:not(.admin-area-v71) select:focus{
  outline:none!important;
  border-color:rgba(255,77,109,.82)!important;
  box-shadow:0 0 0 4px rgba(255,77,109,.13),inset 0 1px 0 rgba(255,255,255,.09)!important;
}

/* Plantillas / cards / paneles */
body:not(.admin-area-v71) .panel,
body:not(.admin-area-v71) .card,
body:not(.admin-area-v71) .template-card,
body:not(.admin-area-v71) .ab103-plan-card,
body:not(.admin-area-v71) .ab101-plan-card,
body:not(.admin-area-v71) .ai126-panel,
body:not(.admin-area-v71) .ai127-panel,
body:not(.admin-area-v71) .ai126-credit-card,
body:not(.admin-area-v71) .ai127-credit-card,
body:not(.admin-area-v71) .my-card-v98,
body:not(.admin-area-v71) .info-page,
body:not(.admin-area-v71) .templates-shell,
body:not(.admin-area-v71) .templates-card-mini,
body:not(.admin-area-v71) .features>div,
body:not(.admin-area-v71) .features.mini>div,
body:not(.admin-area-v71) .faq details{
  background:
    linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.026)),
    radial-gradient(circle at 50% 0%,rgba(255,77,109,.16),transparent 42%),
    linear-gradient(145deg,rgba(43,13,23,.90),rgba(13,5,8,.88))!important;
  border:1px solid rgba(255,77,109,.28)!important;
  box-shadow:var(--ab162-shadow)!important;
  backdrop-filter:blur(15px) saturate(1.12)!important;
  -webkit-backdrop-filter:blur(15px) saturate(1.12)!important;
}
body:not(.admin-area-v71) .card:hover,
body:not(.admin-area-v71) .template-card:hover,
body:not(.admin-area-v71) .ab101-plan-card:hover,
body:not(.admin-area-v71) .ab103-plan-card:hover,
body:not(.admin-area-v71) .features>div:hover,
body:not(.admin-area-v71) .features.mini>div:hover{
  border-color:rgba(255,77,109,.72)!important;
  box-shadow:0 32px 96px rgba(0,0,0,.48),0 0 52px rgba(255,77,109,.28)!important;
}
body:not(.admin-area-v71) h1,
body:not(.admin-area-v71) h2,
body:not(.admin-area-v71) h3,
body:not(.admin-area-v71) h4{
  color:#fff!important;
  text-shadow:0 0 24px rgba(255,77,109,.20)!important;
}
body:not(.admin-area-v71) p,
body:not(.admin-area-v71) li,
body:not(.admin-area-v71) .showing,
body:not(.admin-area-v71) .my-template-v98 p,
body:not(.admin-area-v71) .ab101-lead,
body:not(.admin-area-v71) .ai126-hero-copy p,
body:not(.admin-area-v71) .ai127-hero-copy p{
  color:rgba(255,255,255,.82)!important;
}
body:not(.admin-area-v71) small,
body:not(.admin-area-v71) .ab101-kicker,
body:not(.admin-area-v71) .templates-hero small,
body:not(.admin-area-v71) .ai126-kicker,
body:not(.admin-area-v71) .ai127-kicker,
body:not(.admin-area-v71) .info-page small{
  color:#ffd9e1!important;
  background:rgba(255,77,109,.14)!important;
  border:1px solid rgba(255,77,109,.35)!important;
  border-radius:999px!important;
  padding:8px 13px!important;
  box-shadow:0 0 24px rgba(255,77,109,.14)!important;
}
body:not(.admin-area-v71) .tab.active,
body:not(.admin-area-v71) .tab:hover,
body:not(.admin-area-v71) .pagination .current,
body:not(.admin-area-v71) .ab101-toggle .active{
  background:linear-gradient(135deg,var(--ab162-hot),#ce163f)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.24)!important;
  box-shadow:0 12px 30px rgba(255,77,109,.28)!important;
}
body:not(.admin-area-v71) .tab,
body:not(.admin-area-v71) .pagination a,
body:not(.admin-area-v71) .templates-hero-pills span,
body:not(.admin-area-v71) .footer-chips-v45 span,
body:not(.admin-area-v71) .my-meta-v98 div{
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,77,109,.28)!important;
  color:#fff!important;
}
body:not(.admin-area-v71) .thumb,
body:not(.admin-area-v71) .thumb-v19{background:#14070d!important;}
body:not(.admin-area-v71) .rating-stars,
body:not(.admin-area-v71) .stars{filter:drop-shadow(0 0 10px rgba(255,77,109,.35))!important;}
body:not(.admin-area-v71) .my-status-v98.ok{background:#ffffff!important;color:#2B0D17!important;}
body:not(.admin-area-v71) .my-status-v98.bad{background:var(--ab162-hot)!important;color:#fff!important;}

/* Páginas informativas: Soporte/About/FAQ/Privacy/Terms/Refund */
body:not(.admin-area-v71) .info-page.panel{
  width:min(1040px,calc(100% - 28px))!important;
  margin:clamp(26px,6vw,70px) auto clamp(54px,8vw,100px)!important;
  padding:clamp(26px,5vw,54px)!important;
  border-radius:32px!important;
  position:relative!important;
  overflow:hidden!important;
}
body:not(.admin-area-v71) .info-page.panel::before{
  content:"";position:absolute;inset:-30%;pointer-events:none;
  background:radial-gradient(circle at 25% 22%,rgba(255,77,109,.28),transparent 34%),linear-gradient(115deg,transparent,rgba(255,255,255,.06),transparent);
  opacity:.82;z-index:-1;
}
body:not(.admin-area-v71) .info-page.panel h1{
  font-size:clamp(2.5rem,6vw,5.4rem)!important;
  line-height:.9!important;
  margin:18px 0 22px!important;
  font-family:Georgia,'Times New Roman',serif!important;
  letter-spacing:-.055em!important;
}

/* Footer global con la composición Amor Virtual */
body:not(.admin-area-v71) .footer-v45{
  background:
    radial-gradient(circle at 18% 12%,rgba(255,77,109,.28),transparent 30%),
    radial-gradient(circle at 80% 0%,rgba(255,122,146,.18),transparent 32%),
    linear-gradient(145deg,#070305 0%,#2B0D17 58%,#11040a 100%)!important;
  border-top:1px solid rgba(255,77,109,.30)!important;
  box-shadow:0 -28px 90px rgba(0,0,0,.38),0 0 54px rgba(255,77,109,.13)!important;
}
body:not(.admin-area-v71) .footer-v45::before{
  background-image:radial-gradient(circle,rgba(255,255,255,.44) 1px,transparent 1.7px)!important;
  opacity:.13!important;
}
body:not(.admin-area-v71) .footer-v45::after{
  background:radial-gradient(circle at 50% 15%,rgba(255,77,109,.32),transparent 44%)!important;
  filter:blur(42px)!important;
}
body:not(.admin-area-v71) .footer-brand-card,
body:not(.admin-area-v71) .footer-card-v45,
body:not(.admin-area-v71) .footer-love-note-v45{
  background:
    linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.028)),
    linear-gradient(145deg,rgba(43,13,23,.78),rgba(8,3,5,.62))!important;
  border-color:rgba(255,77,109,.30)!important;
  box-shadow:0 22px 64px rgba(0,0,0,.32),0 0 34px rgba(255,77,109,.11)!important;
}
body:not(.admin-area-v71) .footer-card-v45 h4{color:#fff!important;}
body:not(.admin-area-v71) .footer-v45 a{
  color:#fff!important;
  transition:transform .22s ease, background .22s ease, border-color .22s ease, color .22s ease;
}
body:not(.admin-area-v71) .footer-card-v45 a:hover,
body:not(.admin-area-v71) .footer-copy-v45 a:hover{
  background:rgba(255,77,109,.14)!important;
  border-color:rgba(255,77,109,.46)!important;
  transform:translateX(4px)!important;
  color:#fff!important;
}
body:not(.admin-area-v71) .footer-copy-v45{
  border-color:rgba(255,77,109,.24)!important;
  background:rgba(7,3,5,.42)!important;
}

@media(max-width:1120px){
  body:not(.admin-area-v71) .topbar .nav.nav-v20{
    background:rgba(13,5,8,.97)!important;
    border-color:rgba(255,77,109,.34)!important;
    box-shadow:0 28px 88px rgba(0,0,0,.56),0 0 44px rgba(255,77,109,.16)!important;
  }
  body:not(.admin-area-v71) .topbar .nav.nav-v20::before{
    color:#fff!important;
    text-shadow:0 0 18px rgba(255,77,109,.52)!important;
  }
}
@media(max-width:640px){
  body:not(.admin-area-v71) main{background-size:58px 58px,58px 58px,auto,auto;}
  body:not(.admin-area-v71) .info-page.panel{border-radius:24px!important;padding:24px 18px!important;}
}
@media(prefers-reduced-motion:reduce){
  body:not(.admin-area-v71) *,
  body:not(.admin-area-v71) *::before,
  body:not(.admin-area-v71) *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;}
}
