/* ============================================================
   TEMA AIWAVE — capa visual sobre style.css / account.css / tienda.css
   Basado en la plantilla AiWave (fondo #0E0C15, violeta #8B5CF6 →
   lila #FF8AC4, tipografía Sora). Solo cambia la apariencia: los IDs,
   clases que usa el JS y la estructura de datos siguen siendo los mismos.
   ============================================================ */

:root{
  /* Superficies */
  --bg-0:#0E0C15;
  --bg-1:#0E0C15;
  --bg-2:#16181E;
  --bg-3:#16181E;
  --aw-surface:#16181E;
  --aw-surface-2:#1B1D24;
  --aw-surface-3:#21242D;
  --aw-border:rgba(255,255,255,0.06);
  --aw-border-strong:rgba(255,255,255,0.12);

  /* Texto */
  --white:#FFFFFF;
  --aw-text:#BCC3D7;
  --aw-muted:#878C9E;

  /* Marca: el degradado de AiWave reemplaza al rosa/violeta anterior en
     todos los lugares que usaban var(--pink)/var(--violet). */
  --violet:#8B5CF6;
  --pink:#FF4FA3;
  --violet-soft:#C4A8FF;
  --pink-soft:#C9C3DA;
  --gold:#FFB3DA;
  --gold-soft:#FFE0F0;
  --cyan:#B44CFF;
  --aw-pink:#FF4FA3;
  --aw-magenta:#D946EF;
  --aw-purple:#8B5CF6;
  --aw-grad:linear-gradient(135deg, #FF4FA3 0%, #D946EF 50%, #8B5CF6 100%);
  --aw-grad-soft:linear-gradient(135deg, rgba(255,79,163,0.16), rgba(139,92,246,0.16));
  --aw-grad-text:linear-gradient(90deg, #FFB3DA 0%, #FF4FA3 30%, #D946EF 60%, #8B5CF6 100%);
  --live:#FF4D6D;

  --glass-bg:rgba(255,255,255,0.025);
  --glass-bg-strong:rgba(255,255,255,0.05);
  --glass-border:rgba(255,255,255,0.08);
  --glass-border-soft:rgba(255,255,255,0.05);

  --shadow-glow:0 20px 50px -20px rgba(217,70,239,0.55);
  --shadow-pink:0 12px 30px -12px rgba(217,70,239,0.7);
  --shadow-lift:0 30px 60px -30px rgba(0,0,0,0.8);

  --font-body:'Sora', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-display:'Sora', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-script:'Sora', system-ui, sans-serif;

  --aw-radius:16px;
  --aw-radius-sm:10px;
}

/* ---------- Base ---------- */
body{
  background:
    radial-gradient(60% 45% at 50% -10%, rgba(217,70,239,0.22), transparent 70%),
    radial-gradient(40% 30% at 100% 30%, rgba(255,79,163,0.06), transparent 70%),
    var(--bg-0);
  color:var(--aw-text);
  font-family:var(--font-body);
  font-weight:400;
  -webkit-font-smoothing:antialiased;
}
h1, h2, h3, h4, h5, h6{ color:var(--white); font-family:var(--font-display); letter-spacing:-0.02em; }
::selection{ background:rgba(217,70,239,0.45); color:#fff; }
::-webkit-scrollbar-thumb{ background:#2E313D; }
::-webkit-scrollbar-thumb:hover{ background:var(--violet); }

/* Fondo: estrellas sutiles y un solo halo violeta (sin auroras de colores) */
.sky .star{ opacity:.55; }
.orb{ opacity:.18; }
.cloud--1{ background:radial-gradient(circle at center, #8B5CF6 0%, transparent 65%); }
.cloud--2{ background:radial-gradient(circle at center, #FF8AC4 0%, transparent 65%); opacity:.08; }
.cloud--3{ display:none; }
.shooting-star--pink, .shooting-star--gold{ display:none; }

/* Reveal más limpio: sin desenfoque, solo opacidad + desplazamiento */
.reveal, .reveal-stagger > *{ filter:none; }

/* ---------- NAV (barra de cristal + grupos de enlaces en "píldora") ---------- */
.valesuki-nav{
  background:rgba(14,12,21,0.72);
  border-bottom:1px solid var(--aw-border);
  padding-top:12px;
  padding-bottom:12px;
}
.valesuki-nav .navbar-brand__word{
  font-size:1.9rem;
  color:#fff;
  text-shadow:0 0 30px rgba(217,70,239,0.6);
}
.valesuki-nav .navbar-brand:hover .navbar-brand__word{ text-shadow:0 0 36px rgba(255,79,163,0.85); }
.valesuki-nav .nav-link{
  font-weight:500;
  font-size:.88rem;
  color:#fff;
  opacity:.72;
  padding:8px 14px !important;
  border-radius:999px;
  transition:opacity .2s, background .2s;
}
.valesuki-nav .nav-link i{ font-size:.9rem; opacity:.8; }
.valesuki-nav .nav-link::after{ display:none; }
.valesuki-nav .nav-link:hover{ opacity:1; background:rgba(255,255,255,0.05); }
@media (min-width:1200px){
  .valesuki-nav .navbar-nav{
    padding:5px;
    gap:2px !important;
    border-radius:999px;
    background:rgba(255,255,255,0.03);
    border:1px solid var(--aw-border);
  }
}
.lang-switch{ background:rgba(255,255,255,0.03); border-color:var(--aw-border); }
.lang-switch__option{ font-weight:600; }
.lang-switch__option.is-active{ background:var(--aw-grad); color:#fff; }
.valesuki-nav .navbar-toggler{ border-color:var(--aw-border-strong); border-radius:10px; }
@media (max-width:1199px){
  .valesuki-nav .navbar-collapse{
    background:#121019;
    border-color:var(--aw-border);
    border-radius:var(--aw-radius);
  }
  .valesuki-nav .nav-link{ padding:10px 12px !important; }
}

/* ---------- HERO (centrado, estilo AiWave) ---------- */
.hero{
  min-height:auto;
  flex-direction:column;
  align-items:center;
  padding:170px 20px 40px;
  overflow:hidden;
}
.hero__gridlines{
  position:absolute;
  inset:0 0 auto 0;
  height:900px;
  z-index:-1;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.045) 1px, transparent 1px);
  background-size:64px 64px;
  background-position:center top;
  -webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 30%, #000 30%, transparent 75%);
  mask-image:radial-gradient(ellipse 70% 60% at 50% 30%, #000 30%, transparent 75%);
}
.hero__inner{
  position:relative;
  max-width:880px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:18px;
}
.hero__badge{
  padding:7px 16px 7px 12px;
  border-radius:999px;
  background:rgba(217,70,239,0.1);
  border:1px solid rgba(217,70,239,0.35);
  backdrop-filter:none;
  color:#FFC2E1;
  letter-spacing:.08em;
  font-size:.72rem;
  font-weight:600;
  animation:none;
}
.hero__eyebrow{
  font-family:var(--font-display);
  font-style:normal;
  font-weight:600;
  font-size:clamp(1.6rem, 4.4vw, 3.4rem);
  line-height:1.1;
  letter-spacing:-0.03em;
  color:#fff;
  margin:6px 0 -10px;
}
.hero__wordmark{
  font-size:clamp(4rem, 13vw, 8.5rem);
  line-height:1.05;
  margin:0;
  background:var(--aw-grad-text);
  background-size:200% auto;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  filter:drop-shadow(0 10px 50px rgba(217,70,239,0.45));
  animation:shimmer 10s linear infinite;
}
.hero__tagline{
  font-size:clamp(1rem, 1.6vw, 1.15rem);
  color:var(--aw-text);
  max-width:600px;
  line-height:1.7;
  opacity:1;
  margin:0;
}
.hero__actions{ justify-content:center; margin-top:10px; gap:12px; }

.hero__showcase{
  position:relative;
  width:100%;
  max-width:1080px;
  margin:72px auto 0;
  padding:0 4px;
}
.hero__showcase::before{
  content:'';
  position:absolute;
  left:10%; right:10%; top:-40px; height:280px;
  background:radial-gradient(ellipse at center, rgba(217,70,239,0.45), transparent 70%);
  filter:blur(40px);
  z-index:-1;
}
.hero__frame{
  position:relative;
  border-radius:22px;
  padding:1px;
  background:linear-gradient(180deg, rgba(255,79,163,0.45), rgba(255,255,255,0.06) 35%, rgba(255,255,255,0.03));
  box-shadow:0 40px 120px -40px rgba(0,0,0,0.9);
}
.hero__frame-bar{
  display:flex;
  align-items:center;
  gap:7px;
  padding:14px 18px;
  background:#121118;
  border-radius:21px 21px 0 0;
  border-bottom:1px solid var(--aw-border);
}
.hero__frame-bar span{ width:10px; height:10px; border-radius:50%; background:#2E313D; }
.hero__frame-bar span:first-child{ background:#FF5F57; }
.hero__frame-bar span:nth-child(2){ background:#FEBC2E; }
.hero__frame-bar span:nth-child(3){ background:#28C840; }
.hero__frame-url{
  margin:0 auto;
  padding:5px 16px;
  border-radius:8px;
  background:rgba(255,255,255,0.04);
  border:1px solid var(--aw-border);
  font-size:.74rem;
  color:var(--aw-muted);
  transform:translateX(-18px);
}
.hero__frame-body{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:18px;
  padding:18px;
  background:linear-gradient(180deg, #121118, #0F0E15);
  border-radius:0 0 21px 21px;
}
.hero__art{
  border-radius:16px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 40%, rgba(217,70,239,0.28), transparent 65%),
    #16181E;
  border:1px solid var(--aw-border);
  min-height:360px;
  padding:28px;
}
.hero__art-glow{ background:radial-gradient(circle, rgba(217,70,239,0.45), rgba(255,79,163,0.18) 55%, transparent 75%); }
.hero__art-img{
  width:min(100%, 300px);
  border-radius:18px;
  box-shadow:0 30px 60px -20px rgba(0,0,0,0.8), 0 0 0 1px rgba(255,255,255,0.08);
}
.hero__art-sticker{
  width:46px; height:46px;
  background:rgba(22,24,30,0.85);
  border-color:var(--aw-border-strong);
  font-size:1.1rem;
}
.hero__art-sticker--1{ color:#FFC2E1; top:8%; left:6%; }
.hero__art-sticker--2{ color:#FF8AC4; bottom:8%; right:6%; }

.hero__stats{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin:0;
}
.hero__stat,
.hero__stat:first-child{
  flex:1;
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:14px;
  align-items:center;
  align-content:center;
  padding:18px 20px;
  border-radius:16px;
  background:#16181E;
  border:1px solid var(--aw-border);
  text-align:left;
  text-decoration:none;
  color:inherit;
  transition:border-color .2s, transform .2s;
}
.hero__stat::before{ display:none; }
.hero__stat > i{
  grid-row:1 / span 2;
  width:44px; height:44px;
  border-radius:12px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(217,70,239,0.14);
  border:1px solid rgba(217,70,239,0.3);
  color:#FF8AC4;
  font-size:1.15rem;
}
.hero__stat strong{
  font-family:var(--font-display);
  font-size:1.6rem;
  font-weight:700;
  line-height:1.1;
  background:none;
  color:#fff;
}
.hero__stat span{ font-size:.72rem; color:var(--aw-muted); opacity:1; letter-spacing:.06em; }
.hero__stat--link:hover{ border-color:rgba(217,70,239,0.5); transform:translateY(-2px); }
.hero__stat--link strong{ font-size:1.4rem; color:#FF8AC4; }

@media (max-width:860px){
  .hero{ padding-top:130px; }
  .hero__frame-body{ grid-template-columns:1fr; }
  .hero__art{ min-height:300px; order:0; margin-bottom:0; }
  .hero__stats{ flex-direction:row; flex-wrap:wrap; }
  .hero__stat{ min-width:150px; }
  .hero__frame-url{ transform:none; }
}
@media (max-width:520px){
  .hero__showcase{ margin-top:48px; }
  .hero__frame-body{ padding:12px; gap:12px; }
  .hero__stat{ padding:14px; }
}

/* ---------- BOTONES ---------- */
.btn{
  border-radius:var(--aw-radius-sm);
  font-weight:600;
  font-size:.95rem;
  padding:14px 26px;
  letter-spacing:-0.01em;
}
.btn--primary{
  background-image:var(--aw-grad), linear-gradient(120deg, transparent 32%, rgba(255,255,255,0.4) 50%, transparent 68%);
  color:#fff;
  box-shadow:0 10px 30px -10px rgba(217,70,239,0.8), inset 0 1px 0 rgba(255,255,255,0.25);
}
.btn--primary:hover{
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 16px 40px -12px rgba(217,70,239,0.95), inset 0 1px 0 rgba(255,255,255,0.3);
}
.btn--ghost{
  background:rgba(255,255,255,0.03);
  border-color:var(--aw-border-strong);
  backdrop-filter:none;
}
.btn--ghost:hover{
  background:rgba(217,70,239,0.1);
  border-color:rgba(217,70,239,0.55);
  box-shadow:none;
  transform:translateY(-2px);
}
.btn--sm{ padding:9px 16px; font-size:.82rem; border-radius:8px; }
.btn--discord:hover, .btn--twitch:hover{ transform:translateY(-2px); }

/* ---------- SECCIONES ---------- */
.section{ padding:110px 24px; max-width:1200px; }
/* Franja a todo lo ancho con border-image: el área "outset" es solo
   pintura, no cuenta como desborde, así que en móvil no ensancha la página. */
.section--alt{
  background:none;
  border:none;
  border-radius:0;
  border-image:linear-gradient(180deg, transparent, rgba(255,255,255,0.02) 18%, rgba(255,255,255,0.02) 82%, transparent) fill 0 / 0 / 0 100vw;
}
.section__title{ margin-bottom:12px; }
.tag{
  font-family:var(--font-display);
  font-style:normal;
  font-weight:600;
  font-size:clamp(1.9rem, 4vw, 2.9rem);
  letter-spacing:-0.03em;
  line-height:1.15;
  background:none;
  color:#fff;
  animation:none;
  gap:14px;
}
.tag > i{
  width:46px; height:46px;
  flex-shrink:0;
  border-radius:12px;
  display:inline-flex; align-items:center; justify-content:center;
  font-size:1.15rem;
  color:#fff;
  background:var(--aw-grad);
  box-shadow:0 10px 24px -8px rgba(217,70,239,0.8);
}
.section__sub{
  color:var(--aw-text);
  opacity:1;
  font-size:1.05rem;
  margin-bottom:52px;
  padding-bottom:0;
}
.section__sub::after{ display:none; }
.section-intro__art{
  border-radius:var(--aw-radius);
  box-shadow:0 30px 60px -25px rgba(0,0,0,0.85), 0 0 0 1px var(--aw-border-strong);
}
.section-intro__art:hover{
  transform:translateY(-4px);
  box-shadow:0 34px 70px -24px rgba(0,0,0,0.9), 0 0 0 1px rgba(217,70,239,0.5), 0 0 50px -10px rgba(217,70,239,0.5);
}

/* ---------- TARJETAS (superficies sólidas en vez de vidrio) ---------- */
.card{
  background:var(--aw-surface);
  border:1px solid var(--aw-border);
  border-radius:var(--aw-radius);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  box-shadow:none;
  color:var(--aw-text);
}
.card::before{
  background:linear-gradient(90deg, transparent, rgba(255,79,163,0.6), transparent);
  height:1px;
  opacity:.6;
}
.spot::after, .card::after, .shop-card::after, .game-card::after, .event-card::after, .clip-card::after, .social-btn::after, .donations-card::after,
.ticket-card::after, .order-card::after, .streamer-card::after{
  background:radial-gradient(260px circle at var(--spot-x,50%) var(--spot-y,50%), rgba(217,70,239,0.16), transparent 70%);
}

/* Streams */
.twitch-embed{ border-radius:12px; }
.twitch-offline{ background:radial-gradient(circle at 50% 40%, rgba(217,70,239,0.2), transparent 70%), #121118; }
.twitch-offline__icon{ color:#FF8AC4; filter:drop-shadow(0 0 16px rgba(217,70,239,0.6)); }
.twitch-offline__title{ font-weight:600; color:#fff; }
.live-indicator{ color:var(--aw-text); font-weight:600; }
.live-dot{ background:var(--live); }
.card--calendar h3{ font-weight:600; font-size:1.1rem; color:#fff; }
.card--calendar h3 i{ color:#FF8AC4; }
.schedule li{
  background:#1B1D24;
  border:1px solid var(--aw-border);
  border-radius:10px;
  font-weight:500;
  font-size:.88rem;
}
.schedule li:hover{ background:#21242D; border-color:rgba(217,70,239,0.35); }
.schedule__day{ color:#fff; font-weight:600; }
.schedule__time{ color:var(--aw-text); }
.schedule__note{ color:var(--aw-muted); opacity:1; }

/* Juegos */
.games-carousel__arrow{
  background:#16181E;
  border-color:var(--aw-border-strong);
  backdrop-filter:none;
}
.games-carousel__arrow:hover{ background:var(--violet); border-color:var(--violet); }
.game-card{ border-radius:var(--aw-radius); border-color:var(--aw-border); background:#16181E; }
.game-card:hover{ transform:translateY(-6px); border-color:rgba(217,70,239,0.6); box-shadow:var(--shadow-glow); }
.game-card__shade{ background:linear-gradient(180deg, transparent 35%, rgba(14,12,21,0.92) 100%); }
.game-card__title{ font-weight:600; }
.game-card__meta{ color:var(--aw-text); }
.game-card__rank{
  background:rgba(217,70,239,0.25);
  border-color:rgba(255,79,163,0.45);
  color:#fff;
  font-weight:500;
}

/* Clips */
.clip-card{
  background:var(--aw-surface);
  border-color:var(--aw-border);
  border-radius:var(--aw-radius);
  backdrop-filter:none;
}
.clip-card:hover{ transform:translateY(-6px); border-color:rgba(217,70,239,0.55); box-shadow:var(--shadow-glow); }
.clip-card__thumb{
  background:
    radial-gradient(circle at 50% 50%, rgba(217,70,239,0.35), transparent 70%),
    linear-gradient(135deg, #1B1D24, #121118);
  border-bottom:1px solid var(--aw-border);
}
.clip-card__thumb i{ color:#fff; }
.clip-card__title{ font-weight:600; color:#fff; }
.clip-card__game{ color:var(--aw-muted); }

/* Eventos */
.event-card{
  background:var(--aw-surface);
  border-color:var(--aw-border);
  border-radius:var(--aw-radius);
  backdrop-filter:none;
}
.event-card:hover{ transform:translateY(-6px); border-color:rgba(217,70,239,0.55); }
.event-card__cover--placeholder{ background:radial-gradient(circle at 50% 50%, rgba(217,70,239,0.3), transparent 70%), #1B1D24; color:#FF8AC4; }
.event-card__date{
  display:inline-flex;
  padding:4px 10px;
  border-radius:6px;
  background:rgba(217,70,239,0.14);
  color:#FFC2E1;
  font-weight:600;
  letter-spacing:.06em;
}
.event-card__title{ font-weight:600; color:#fff; }
.event-card__location{ color:var(--aw-muted); }
.event-card__desc{ color:var(--aw-text); opacity:1; }

/* Buzón */
.login-gate__avatar{ display:block; margin:0 auto 16px; border:2px solid rgba(255,79,163,0.7); box-shadow:0 0 0 6px rgba(217,70,239,0.12), 0 20px 40px -12px rgba(217,70,239,0.6); }
.login-gate h3{ font-weight:600; }
.login-gate p{ color:var(--aw-text); opacity:1; }
.login-gate__hint{ color:var(--aw-muted); opacity:1 !important; }
.login-session__avatar{ border-color:#FF8AC4; }
.mailbox__form textarea,
.chatbot-form input, .chatbot-form textarea{
  background:#16181E;
  border:1px solid var(--aw-border-strong);
  border-radius:12px;
  color:#fff;
}
.mailbox__form textarea:focus,
.chatbot-form input:focus, .chatbot-form textarea:focus{
  outline:none;
  border-color:var(--violet);
  box-shadow:0 0 0 3px rgba(217,70,239,0.2);
}
.mail-note{
  background:var(--aw-surface);
  border-color:var(--aw-border);
  border-radius:var(--aw-radius);
  backdrop-filter:none;
}
.mail-note__author{ color:#fff; }
.mail-note__text{ color:var(--aw-text); }
.mailbox__nav{ background:#16181E; backdrop-filter:none; }
.mailbox__nav:hover{ background:var(--violet); }
.mailbox__dot.is-active{ background:var(--aw-grad); }

/* Redes */
.social-btn{
  background:var(--aw-surface);
  border-color:var(--aw-border);
  border-radius:var(--aw-radius);
  backdrop-filter:none;
  padding:26px 12px;
}
.social-btn i{
  width:52px; height:52px;
  display:flex; align-items:center; justify-content:center;
  border-radius:14px;
  background:#1B1D24;
  border:1px solid var(--aw-border);
  font-size:1.5rem;
}
.social-btn span{ color:#fff; font-weight:500; opacity:1; }
.social-btn:hover{ transform:translateY(-5px); box-shadow:0 20px 40px -20px var(--glow); }

/* Patrocinadores */
.sponsors-section__label{ color:var(--aw-muted); letter-spacing:.14em; }
.sponsor-item{ background:var(--aw-surface); border-color:var(--aw-border); }

/* Toasts */
.toast-item{ background:#16181E; border-color:var(--aw-border-strong); border-radius:12px; color:#fff; }
.toast-item.toast--error{ border-color:rgba(255,77,109,0.5); }
.toast-item.toast--success{ border-color:rgba(62,183,94,0.55); }

/* Modal de clip */
.clip-modal{ background:#121118; border:1px solid var(--aw-border-strong); border-radius:var(--aw-radius); }

/* Chatbot */
.chatbot-bubble{ background:var(--aw-grad); box-shadow:0 14px 34px -10px rgba(217,70,239,0.9); }
.chatbot-panel{
  background:#121118;
  border:1px solid var(--aw-border-strong);
  border-radius:20px;
  backdrop-filter:none;
}
.chatbot-panel__header{ background:#16181E; border-bottom:1px solid var(--aw-border); }
.chatbot-faq__item{ background:#16181E; border:1px solid var(--aw-border); border-radius:12px; }
.chatbot-faq__q{ color:#fff; }
.chatbot-faq__a{ color:var(--aw-text); }

/* ---------- FOOTER ---------- */
.footer{
  background:#0B0A11;
  border-top:1px solid var(--aw-border);
  padding-top:72px;
}
.footer__brand-word{ text-shadow:0 0 26px rgba(217,70,239,0.6); }
.footer__tagline{ color:var(--aw-text); opacity:1; }
.footer__socials a{ background:#16181E; border-color:var(--aw-border); border-radius:10px; }
.footer__col-title{ color:#fff; opacity:1; font-weight:600; letter-spacing:.12em; }
.footer__col a{ color:var(--aw-muted); opacity:1; }
.footer__col a:hover{ color:#fff; }
.footer__bottom{ color:var(--aw-muted); opacity:1; border-top-color:var(--aw-border); }

/* ============================================================
   PÁGINAS PROPIAS — Mi cuenta, Tienda, Términos, Privacidad
   ============================================================ */
.account-topbar{
  background:rgba(14,12,21,0.75);
  border-bottom:1px solid var(--aw-border);
}
.account-topbar__word{ color:#fff; text-shadow:0 0 24px rgba(217,70,239,0.6); }
.account-topbar__title{ font-weight:600; color:#fff; }
.account-topbar__user strong{ color:#FF8AC4; }

.account-panel{
  background:var(--aw-surface);
  border:1px solid var(--aw-border);
  border-radius:20px;
  backdrop-filter:none;
  box-shadow:0 40px 80px -40px rgba(0,0,0,0.9);
}
.account-hero__title, .account-orders__intro h1{ font-weight:600; }
.account-hero__sub{ color:var(--aw-text); opacity:1; }
.account-auth__tabs{ background:#0F0E15; border-color:var(--aw-border); border-radius:12px; }
.account-auth__tab{ border-radius:9px; font-weight:600; }
.account-auth__tab.is-active{ background:var(--aw-grad); color:#fff; }
.account-auth__field{ color:var(--aw-text); font-weight:500; }
.account-auth__field input,
.account-auth__captcha input,
.verify-banner__code-form input,
.account-ticket-form textarea,
.account-ticket-form select,
.ticket-card__reply textarea{
  background:#0F0E15;
  border:1px solid var(--aw-border-strong);
  border-radius:10px;
}
.account-auth__field input:focus,
.account-ticket-form textarea:focus,
.ticket-card__reply textarea:focus{
  outline:none;
  border-color:var(--violet);
  box-shadow:0 0 0 3px rgba(217,70,239,0.2);
}
.account-auth__forgot{ color:#FF8AC4; }
.account-auth__toggle-pass{ color:var(--aw-muted); }
.account-orders__eyebrow, .streamers-rec__label{ color:#FF8AC4; }
.order-card, .ticket-card, .account-ticket-form{
  background:var(--aw-surface);
  border-color:var(--aw-border);
  border-radius:var(--aw-radius);
}
.order-card__number, .ticket-card__number{ color:#fff; }
.order-card__total{ color:#FF8AC4; }
.order-timeline__step.is-current .order-timeline__dot{ border-color:#FF8AC4; color:#FF8AC4; box-shadow:0 0 0 4px rgba(217,70,239,0.22); }
.order-timeline__step.is-current .order-timeline__label{ color:#FFC2E1; }
.streamer-card{ background:var(--aw-surface); border-color:var(--aw-border); border-radius:14px; }
.streamer-card:hover{ background:#1B1D24; border-color:rgba(217,70,239,0.5); }
.legal-content__body p{ color:var(--aw-text); opacity:1; }

/* Tienda */
.tienda-hero__title{
  background:var(--aw-grad-text) !important;
  background-size:200% auto !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
}
.shop-card{
  background:var(--aw-surface);
  border-color:var(--aw-border);
  border-radius:var(--aw-radius);
}
.shop-card:hover{ border-color:rgba(217,70,239,0.55); }
.shop-card__name{ color:#fff; font-weight:600; }
.shop-card__price{ color:#FF8AC4; font-weight:700; }
.shop-card__ribbon{ background:rgba(14,12,21,0.85); color:#FFC2E1; border-color:rgba(255,79,163,0.45); }
.shop-card__qty{ border-color:var(--aw-border-strong); border-radius:8px; }
.shop-card__qty-btn{ color:#fff; }
.shop-badge{ background:var(--aw-grad); color:#fff; }
.donations-card{
  background:
    radial-gradient(circle at 0% 0%, rgba(217,70,239,0.2), transparent 55%),
    var(--aw-surface);
  border-color:var(--aw-border);
  border-radius:20px;
}
.donations-card__icon{ background:var(--aw-grad); border-radius:16px; }
.donations-card__body h3{ font-weight:600; }

/* Error pages */
.error-page__code{ background:var(--aw-grad-text); -webkit-background-clip:text; background-clip:text; filter:drop-shadow(0 0 40px rgba(255,79,163,0.45)); }
.error-page__label{ color:#FF8AC4; }
.error-page__message{ color:var(--aw-text); }

/* ============================================================
   NIVEL EXTRA — rosa + morado
   Auroras de fondo, borde luminoso animado, títulos en degradado
   y brillos al pasar el cursor.
   ============================================================ */

/* Fondo: auroras rosa (izquierda) y morado (derecha) */
body{
  background:
    radial-gradient(55% 40% at 8% -5%, rgba(255,79,163,0.30), transparent 70%),
    radial-gradient(50% 40% at 95% 5%, rgba(139,92,246,0.32), transparent 70%),
    radial-gradient(45% 35% at 50% 55%, rgba(217,70,239,0.07), transparent 70%),
    var(--bg-0);
}
.orb{ opacity:.32; }
.cloud--1{ background:radial-gradient(circle at center, #FF4FA3 0%, transparent 65%); }
.cloud--2{ background:radial-gradient(circle at center, #8B5CF6 0%, transparent 65%); opacity:.3; }
.cloud--3{ display:block; background:radial-gradient(circle at center, #D946EF 0%, transparent 65%); opacity:.14; }
.shooting-star--pink{ display:block; }
.sky .star:nth-child(3n){ background:#FFC2E1; }
.sky .star:nth-child(5n){ background:#C4A8FF; }

/* Nav */
.valesuki-nav .navbar-brand__word{ text-shadow:0 0 22px rgba(255,79,163,0.75), 0 0 46px rgba(139,92,246,0.55); }
.valesuki-nav .nav-link:hover{ background:var(--aw-grad-soft); }
@media (min-width:1200px){
  .valesuki-nav .navbar-nav{
    background:linear-gradient(#14111C, #14111C) padding-box, linear-gradient(135deg, rgba(255,79,163,0.35), rgba(139,92,246,0.35)) border-box;
    border:1px solid transparent;
  }
}

/* Hero */
.hero__badge{
  background:rgba(255,79,163,0.1);
  border-color:rgba(255,79,163,0.45);
  color:#FFC2E1;
  box-shadow:0 0 24px -6px rgba(255,79,163,0.6);
}
.hero__eyebrow{ color:#fff; }
.hero__wordmark{ filter:drop-shadow(0 8px 40px rgba(255,79,163,0.5)) drop-shadow(0 0 60px rgba(139,92,246,0.35)); }
.hero__gridlines{
  background-image:
    linear-gradient(rgba(255,143,200,0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(196,168,255,0.07) 1px, transparent 1px);
}
.hero__showcase::before{
  background:
    radial-gradient(ellipse at 30% 50%, rgba(255,79,163,0.55), transparent 65%),
    radial-gradient(ellipse at 70% 50%, rgba(139,92,246,0.55), transparent 65%);
}

/* Borde luminoso que gira alrededor de la vitrina */
@property --aw-angle{ syntax:'<angle>'; inherits:false; initial-value:0deg; }
.hero__frame{
  background:conic-gradient(from var(--aw-angle), rgba(255,79,163,0.15), #FF4FA3, #D946EF, #8B5CF6, rgba(139,92,246,0.15) 40%, rgba(255,255,255,0.06) 60%, rgba(255,79,163,0.15));
  padding:1.5px;
  animation:awSpin 8s linear infinite;
  box-shadow:0 40px 120px -40px rgba(0,0,0,0.9), 0 0 80px -30px rgba(217,70,239,0.6);
}
@keyframes awSpin{ to{ --aw-angle:360deg; } }
.hero__art{
  background:
    radial-gradient(circle at 35% 35%, rgba(255,79,163,0.28), transparent 60%),
    radial-gradient(circle at 70% 70%, rgba(139,92,246,0.3), transparent 60%),
    #16141E;
}
.hero__stat > i{ background:var(--aw-grad); border:none; color:#fff; box-shadow:0 8px 20px -8px rgba(255,79,163,0.8); }
.hero__stat--link strong{ background:var(--aw-grad-text); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hero__stat:hover{ border-color:rgba(255,79,163,0.5); }

/* Botones */
.btn--primary{
  background-image:var(--aw-grad), linear-gradient(120deg, transparent 32%, rgba(255,255,255,0.45) 50%, transparent 68%);
  box-shadow:0 10px 30px -10px rgba(255,79,163,0.85), 0 0 0 1px rgba(255,255,255,0.08) inset;
}
.btn--primary:hover{ box-shadow:0 16px 44px -12px rgba(255,79,163,1), 0 0 30px -6px rgba(139,92,246,0.7); }
.btn--ghost:hover{ background:var(--aw-grad-soft); border-color:rgba(255,79,163,0.6); }

/* Títulos de sección: texto en degradado + línea de luz */
.tag > span{
  background:linear-gradient(90deg, #FFFFFF 0%, #FFC2E1 45%, #E9A8FF 75%, #C4A8FF 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.tag > i{ box-shadow:0 10px 28px -8px rgba(255,79,163,0.85), 0 0 0 1px rgba(255,255,255,0.12) inset; }
.section__sub{ padding-bottom:22px; }
.section__sub::after{
  display:block;
  width:64px;
  height:3px;
  background:var(--aw-grad);
  box-shadow:0 0 18px rgba(255,79,163,0.7);
}
.section__sub--left{ padding-bottom:0; }
.section__sub--left::after{ display:none; }

/* Tarjetas: borde en degradado al pasar el cursor */
.card, .clip-card, .event-card, .game-card, .social-btn, .shop-card, .mail-note,
.order-card, .ticket-card, .streamer-card, .account-panel, .donations-card{
  transition:transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s, background .3s;
}
.card{ background:linear-gradient(180deg, #17151F, #13121A); }
.card::before{ background:var(--aw-grad); height:2px; opacity:.85; }
.clip-card:hover, .event-card:hover, .game-card:hover, .shop-card:hover, .streamer-card:hover{
  border-color:rgba(255,79,163,0.55);
  box-shadow:0 24px 50px -24px rgba(255,79,163,0.65), 0 0 0 1px rgba(139,92,246,0.25);
}
.social-btn:hover{ border-color:var(--glow); }
.clip-card__thumb{
  background:
    radial-gradient(circle at 30% 40%, rgba(255,79,163,0.35), transparent 60%),
    radial-gradient(circle at 75% 60%, rgba(139,92,246,0.4), transparent 60%),
    #17151F;
}
.clip-card__thumb i{
  width:58px; height:58px;
  display:flex; align-items:center; justify-content:center;
  border-radius:50%;
  background:var(--aw-grad);
  font-size:1.6rem;
  box-shadow:0 10px 30px -8px rgba(255,79,163,0.9);
  transition:transform .3s var(--ease);
}
.clip-card:hover .clip-card__thumb i{ transform:scale(1.1); }
.event-card__cover--placeholder{
  background:
    radial-gradient(circle at 30% 40%, rgba(255,79,163,0.3), transparent 60%),
    radial-gradient(circle at 75% 60%, rgba(139,92,246,0.35), transparent 60%),
    #17151F;
}
.event-card__date{ background:var(--aw-grad-soft); border:1px solid rgba(255,79,163,0.3); }
.game-card__rank{ background:var(--aw-grad); border:none; }
.schedule li:hover{ border-color:rgba(255,79,163,0.4); background:var(--aw-grad-soft); }
.games-carousel__arrow:hover, .mailbox__nav:hover{ background:var(--aw-grad); border-color:transparent; }

/* Buzón y chatbot */
.login-gate__avatar{ border:2px solid #FF4FA3; box-shadow:0 0 0 6px rgba(255,79,163,0.14), 0 20px 40px -12px rgba(217,70,239,0.7); }
.chatbot-bubble{ box-shadow:0 14px 34px -10px rgba(255,79,163,0.9), 0 0 0 6px rgba(255,79,163,0.12); }
.chatbot-panel__header{ background:linear-gradient(135deg, rgba(255,79,163,0.14), rgba(139,92,246,0.14)), #16141E; }

/* Footer con línea de luz */
.footer{ position:relative; background:linear-gradient(180deg, #0E0C15, #0A0910); }
.footer::before{
  content:'';
  position:absolute;
  left:10%; right:10%; top:-1px;
  height:1px;
  background:linear-gradient(90deg, transparent, #FF4FA3, #D946EF, #8B5CF6, transparent);
  box-shadow:0 0 20px rgba(255,79,163,0.6);
}
.footer__socials a:hover{ background:var(--aw-grad-soft); }

/* Páginas propias */
.account-panel{ background:linear-gradient(180deg, #17151F, #13121A); border-color:rgba(255,79,163,0.18); }
.account-topbar__word{ text-shadow:0 0 22px rgba(255,79,163,0.7); }

@media (prefers-reduced-motion: reduce){
  .hero__frame{ animation:none; }
}

/* ============================================================
   CLIPS — tarjeta con miniatura real de Twitch (16:9) y play
   ============================================================ */
.clip-card{ display:flex; flex-direction:column; height:100%; overflow:hidden; }
.clip-card__thumb{
  position:relative;
  height:auto;
  aspect-ratio:16 / 9;
  overflow:hidden;
  flex-shrink:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.clip-card__img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .6s cubic-bezier(.22,1,.36,1), filter .3s;
}
.clip-card__thumb.has-img::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, transparent 45%, rgba(14,12,21,0.75) 100%);
  pointer-events:none;
}
.clip-card:hover .clip-card__img{ transform:scale(1.07); filter:brightness(1.05) saturate(1.1); }
.clip-card__play{
  position:relative;
  z-index:2;
  width:54px; height:54px;
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:var(--aw-grad);
  color:#fff;
  font-size:1.6rem;
  box-shadow:0 10px 30px -8px rgba(255,79,163,0.9), 0 0 0 6px rgba(255,255,255,0.12);
  transition:transform .3s cubic-bezier(.34,1.56,.64,1);
}
.clip-card__play i{ margin-left:3px; }
.clip-card:hover .clip-card__play{ transform:scale(1.12); }
.clip-card__info{
  flex:1;
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:14px 16px 16px;
}
.clip-card__title{
  margin:0;
  font-size:.95rem;
  line-height:1.35;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.clip-card__game{
  align-self:flex-start;
  margin:0;
  padding:4px 10px;
  border-radius:999px;
  background:var(--aw-grad-soft);
  border:1px solid rgba(255,79,163,0.3);
  color:#FFC2E1;
  font-size:.72rem;
  font-weight:500;
}
