/* ============ Dreams Secret Comunidad ============ */

/* Oscurece TODA la página del hub para que no queden franjas blancas.
   Estas reglas solo cargan en la página donde está el shortcode. */
body.dsc-page{ background:#2A0008 !important; }
body.dsc-page .site,
body.dsc-page .site-content,
body.dsc-page #content,
body.dsc-page #primary,
body.dsc-page .content-area,
body.dsc-page .entry-content,
body.dsc-page .page-content,
body.dsc-page main,
body.dsc-page article,
body.dsc-page .ast-container,
body.dsc-page .elementor,
body.dsc-page .elementor-section-wrap,
body.dsc-page .e-con,
body.dsc-page .e-con-inner{ background:transparent !important; }

.dsc-wrap{
  --dsc-color:#7A001E;
  --dsc-vino:#2A0008;
  --dsc-gold:#D4AF37;
  --dsc-gold-l:#F0D98C;
  --dsc-cream:#F5EBDD;
  --dsc-cream-dim:#c9b8a8;
  max-width:860px;margin:24px auto;padding:44px 30px 56px;
  font-family:Georgia,'Times New Roman',serif;color:var(--dsc-cream);
  box-sizing:border-box;
  /* Fondo oscuro propio: mantiene la esencia aunque la página sea blanca */
  background:
    radial-gradient(ellipse 95% 45% at 50% 0%, rgba(122,0,30,0.55) 0%, transparent 65%),
    radial-gradient(ellipse 80% 50% at 50% 100%, rgba(122,0,30,0.28) 0%, transparent 60%),
    #2A0008;
  border:1px solid rgba(212,175,55,0.28);
  border-radius:22px;
  box-shadow:0 18px 50px rgba(0,0,0,0.35);
}
.dsc-wrap *,.dsc-wrap *::before,.dsc-wrap *::after{box-sizing:border-box;}

/* Bienvenida (cabecera de llegada) */
.dsc-bienvenida{text-align:center;margin:0 0 26px;padding-bottom:22px;border-bottom:1px solid rgba(212,175,55,0.18);}
.dsc-bienv-tag{display:inline-block;font-size:11px;letter-spacing:0.32em;text-transform:uppercase;color:rgba(212,175,55,0.7);margin-bottom:10px;}
.dsc-bienv-titulo{font-family:'Cinzel',Georgia,serif;font-weight:normal;color:var(--dsc-gold);font-size:clamp(1.8rem,5vw,2.6rem);margin:0 0 8px;line-height:1.15;}
.dsc-bienv-sub{color:var(--dsc-cream-dim);font-style:italic;margin:0;line-height:1.5;}

/* Contador de comunidad (miembros + en línea ahora) */
.dsc-contador{display:inline-flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center;
  margin:16px auto 0;padding:8px 20px;
  background:rgba(42,0,8,0.45);border:1px solid rgba(212,175,55,0.28);border-radius:40px;
  font-size:0.95rem;color:var(--dsc-cream-dim);}
.dsc-cont-pieza{display:inline-flex;align-items:center;gap:7px;}
.dsc-cont-num{color:var(--dsc-gold-l);font-weight:bold;font-size:1.05rem;font-family:'Cinzel',Georgia,serif;}
.dsc-cont-lbl{letter-spacing:0.02em;}
.dsc-cont-sep{color:rgba(212,175,55,0.4);}
.dsc-cont-dot{width:9px;height:9px;border-radius:50%;background:#3ecf6a;display:inline-block;flex-shrink:0;
  box-shadow:0 0 0 0 rgba(62,207,106,0.55);animation:dscpulse 2s infinite;}
@keyframes dscpulse{
  0%{box-shadow:0 0 0 0 rgba(62,207,106,0.55);}
  70%{box-shadow:0 0 0 8px rgba(62,207,106,0);}
  100%{box-shadow:0 0 0 0 rgba(62,207,106,0);}
}

/* Cuenta */
.dsc-cuenta{margin:0 0 18px;}
.dsc-yo{display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  background:rgba(122,0,30,0.15);border:1px solid rgba(212,175,55,0.25);
  border-radius:40px;padding:8px 16px;}
.dsc-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  color:#fff;font-weight:bold;font-size:1rem;flex-shrink:0;}
.dsc-hola{font-size:1rem;}
.dsc-invitado{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:space-between;
  background:rgba(122,0,30,0.12);border:1px solid rgba(212,175,55,0.2);
  border-radius:14px;padding:12px 16px;font-size:0.95rem;color:var(--dsc-cream-dim);}

/* Botones */
.dsc-btn{font-family:Georgia,serif;font-size:12px;letter-spacing:0.18em;text-transform:uppercase;
  color:var(--dsc-vino);background:linear-gradient(135deg,var(--dsc-gold),var(--dsc-gold-l));
  border:none;padding:13px 30px;border-radius:34px;cursor:pointer;box-shadow:0 5px 18px rgba(212,175,55,0.25);
  transition:transform .18s ease;}
.dsc-btn:hover{transform:translateY(-2px);}
.dsc-btn-sm{padding:9px 18px;font-size:11px;}
.dsc-link{background:none;border:none;color:var(--dsc-gold);cursor:pointer;font-family:Georgia,serif;
  text-decoration:underline;font-size:0.9rem;}

/* Pestañas */
/* Reset defensivo: que ningún estilo del tema fuerce texto en una sola línea dentro del hub */
.dsc-wrap button{white-space:normal;line-height:1.4;width:auto;}

/* Navegación como los 3 recuadros del cartel (idénticos) */
.dsc-tabs{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:32px;}
.dsc-tab{flex:1 1 200px;max-width:250px;min-width:0;
  background:rgba(122,0,30,0.2);border:1px solid rgba(212,175,55,0.2);
  border-radius:14px;padding:22px 18px;cursor:pointer;text-align:center;
  white-space:normal!important;overflow-wrap:break-word;word-break:break-word;
  display:flex;flex-direction:column;gap:8px;align-items:center;transition:all .2s ease;}
.dsc-tab-nom,.dsc-tab-desc{white-space:normal!important;overflow-wrap:break-word;max-width:100%;}
.dsc-tab:hover{border-color:rgba(212,175,55,0.5);transform:translateY(-3px);}
.dsc-tab.activa{border-color:var(--dsc-gold);background:rgba(122,0,30,0.34);box-shadow:0 6px 20px rgba(0,0,0,0.3);}
.dsc-tab-ic{font-size:1.8rem;color:var(--dsc-gold);line-height:1;}
.dsc-tab-nom{font-family:'Cinzel',Georgia,serif;font-weight:normal;color:var(--dsc-gold-l);font-size:1.1rem;}
.dsc-tab-desc{font-size:0.92rem;line-height:1.5;color:var(--dsc-cream-dim);}

.dsc-panel{display:none;animation:dscfade .4s ease;}
.dsc-panel.activa{display:block;}
@keyframes dscfade{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:translateY(0);}}

/* Intro de sección */
.dsc-intro{text-align:center;margin-bottom:20px;}
.dsc-intro h3{font-family:'Cinzel',Georgia,serif;color:var(--dsc-gold);font-weight:normal;
  font-size:1.5rem;margin:0 0 6px;}
.dsc-intro p{color:var(--dsc-cream-dim);font-style:italic;margin:0;line-height:1.5;}

/* Formularios */
.dsc-form{display:flex;flex-direction:column;gap:10px;max-width:560px;margin:0 auto 26px;
  background:rgba(122,0,30,0.12);border:1px solid rgba(212,175,55,0.2);border-radius:16px;padding:18px;}
.dsc-form input,.dsc-form textarea{width:100%;background:rgba(42,0,8,0.4);
  border:1px solid rgba(212,175,55,0.3);border-radius:10px;padding:13px 15px;color:var(--dsc-cream);
  font-family:Georgia,serif;font-size:1rem;outline:none;transition:border-color .2s ease;resize:vertical;}
.dsc-form input:focus,.dsc-form textarea:focus{border-color:var(--dsc-gold);}
.dsc-form input::placeholder,.dsc-form textarea::placeholder{color:rgba(245,235,221,0.4);font-style:italic;}
.dsc-form .dsc-btn{align-self:center;}
.dsc-form-rep{margin:14px 0 0;padding:12px;background:rgba(42,0,8,0.3);}

/* Aviso login */
.dsc-aviso-login{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  max-width:560px;margin:0 auto 26px;background:rgba(212,175,55,0.08);
  border:1px dashed rgba(212,175,55,0.35);border-radius:14px;padding:16px 20px;color:var(--dsc-cream-dim);}

/* Listas / items */
.dsc-lista{display:flex;flex-direction:column;gap:14px;}
.dsc-vacio{text-align:center;color:var(--dsc-cream-dim);font-style:italic;padding:20px;}
.dsc-item{background:rgba(122,0,30,0.14);border:1px solid rgba(212,175,55,0.18);
  border-radius:14px;padding:18px;display:flex;gap:14px;}
.dsc-item h4{font-family:'Cinzel',Georgia,serif;color:var(--dsc-gold);font-weight:normal;
  font-size:1.15rem;margin:0 0 6px;}
.dsc-item p{margin:0 0 8px;line-height:1.55;color:var(--dsc-cream);}
.dsc-item-body{flex:1;min-width:0;}
.dsc-meta{font-size:0.82rem;color:rgba(245,235,221,0.5);letter-spacing:0.03em;}

/* Voto */
.dsc-voto{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:2px;
  background:rgba(42,0,8,0.4);border:1px solid rgba(212,175,55,0.3);border-radius:12px;
  padding:10px 12px;cursor:pointer;color:var(--dsc-gold-l);min-width:56px;transition:all .18s ease;}
.dsc-voto:hover{border-color:var(--dsc-gold);transform:translateY(-2px);}
.dsc-voto.votado{background:linear-gradient(135deg,var(--dsc-gold),var(--dsc-gold-l));color:var(--dsc-vino);}
.dsc-voto-ic{font-size:1.2rem;line-height:1;}
.dsc-voto-num{font-size:1rem;font-weight:bold;}

/* Consultorio */
.dsc-oficial{margin:12px 0 4px;background:rgba(212,175,55,0.1);border-left:3px solid var(--dsc-gold);
  border-radius:8px;padding:12px 14px;}
.dsc-oficial-tag{display:inline-block;font-size:0.72rem;letter-spacing:0.15em;text-transform:uppercase;
  color:var(--dsc-gold);margin-bottom:5px;}
.dsc-reps{margin:12px 0 0;display:flex;flex-direction:column;gap:8px;}
.dsc-rep{font-size:0.95rem;line-height:1.5;padding:8px 12px;background:rgba(42,0,8,0.25);border-radius:8px;}
.dsc-rep-alias{color:var(--dsc-gold-l);font-weight:bold;margin-right:6px;}

/* Estrellas */
.dsc-estrellas{display:flex;gap:4px;justify-content:center;font-size:1.7rem;color:rgba(212,175,55,0.35);cursor:pointer;}
.dsc-estrellas span{transition:color .15s ease;}
.dsc-estrellas span.on{color:var(--dsc-gold);}
.dsc-stars-fijo{color:var(--dsc-gold);font-size:1.1rem;letter-spacing:2px;margin-bottom:6px;}
.dsc-stars-off{color:rgba(212,175,55,0.25);}

/* Modal */
.dsc-modal{position:fixed;inset:0;background:rgba(20,0,4,0.82);display:flex;align-items:center;justify-content:center;
  z-index:99999;padding:18px;}
.dsc-modal[hidden]{display:none;}
.dsc-modal-caja{position:relative;width:100%;max-width:400px;
  background:linear-gradient(160deg,#3a0010,var(--dsc-vino));
  border:1px solid rgba(212,175,55,0.35);border-radius:18px;padding:30px 26px;
  box-shadow:0 20px 60px rgba(0,0,0,0.5);}
.dsc-modal-x{position:absolute;top:10px;right:14px;background:none;border:none;color:var(--dsc-cream-dim);
  font-size:1.8rem;line-height:1;cursor:pointer;}
.dsc-modal-tabs{display:flex;gap:6px;margin-bottom:18px;}
.dsc-mtab{flex:1;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;
  font-family:'Cinzel',Georgia,serif;color:var(--dsc-cream-dim);padding:8px;font-size:0.95rem;}
.dsc-mtab.activa{color:var(--dsc-gold);border-bottom-color:var(--dsc-gold);}
.dsc-mpanel{display:none;background:none;border:none;padding:0;margin:0;}
.dsc-mpanel.activa{display:flex;}
.dsc-priv{font-size:0.82rem;color:var(--dsc-cream-dim);line-height:1.5;font-style:italic;margin:0;}

/* Toast */
.dsc-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);
  background:var(--dsc-vino);border:1px solid var(--dsc-gold);color:var(--dsc-cream);
  padding:13px 22px;border-radius:30px;z-index:100000;font-size:0.95rem;max-width:90%;text-align:center;
  box-shadow:0 8px 26px rgba(0,0,0,0.4);}
.dsc-toast[hidden]{display:none;}
.dsc-toast.err{border-color:#e06;}

@media(max-width:520px){
  .dsc-wrap{padding:30px 16px 44px;margin:12px auto;border-radius:16px;}
  .dsc-item{flex-direction:row;}
  .dsc-tab{flex-basis:100%;max-width:100%;}
  .dsc-intro h3{font-size:1.25rem;}
}
