:root{
  --bg:#07130f!important;
  --bg2:#0b1c16!important;
  --card:rgba(255,255,255,.045)!important;
  --stroke:rgba(226,240,232,.12)!important;
  --text:#f8faf7!important;
  --muted:#b8c5c1!important;
  --gradient:linear-gradient(100deg,#7de2b8,#79cbd4,#f1c98f)!important;
  --success:#7de2b8!important;
}

html{scroll-padding-top:110px}
body{
  color:var(--text)!important;
  background:
    radial-gradient(circle at 5% 0%,rgba(125,226,184,.12),transparent 25rem),
    radial-gradient(circle at 95% 12%,rgba(241,201,143,.09),transparent 22rem),
    #07130f!important;
  font-family:Inter,"DM Sans",system-ui,sans-serif!important;
}
body::before{
  background-image:radial-gradient(rgba(255,255,255,.18) .7px,transparent .7px)!important;
  background-size:22px 22px!important;
  opacity:.22;
}

.navbar,.nav{
  border:1px solid var(--stroke)!important;
  background:rgba(7,19,15,.86)!important;
  border-radius:20px!important;
  box-shadow:0 12px 40px rgba(0,0,0,.18)!important;
}
.logo,.gradient{
  background:var(--gradient)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
}
.nav-links a{color:#d8e2de!important}
.nav-links a:hover{color:#7de2b8!important}
.btn-primary,.btn:not(.btn-secondary){
  color:#062116!important;
  background:#7de2b8!important;
  box-shadow:0 14px 34px rgba(125,226,184,.18)!important;
}
.btn-secondary{color:#f8faf7!important;background:rgba(255,255,255,.05)!important;border-color:var(--stroke)!important}
.btn:hover{transform:translateY(-2px)!important}

.badge{color:#dce8e3!important;background:rgba(255,255,255,.04)!important;border-color:var(--stroke)!important}
.badge::before{background:#7de2b8!important;box-shadow:0 0 18px rgba(125,226,184,.7)!important}
.hero-card,.card,.phase,.day-card,.bonus-card,.vip-box,.contact-card,.highlight,.sidebar,.content .card{
  border-color:var(--stroke)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.024))!important;
  box-shadow:none!important;
}
.hero-card,.phase,.content .card{border-radius:28px!important}
.day-card,.bonus-card,.card,.contact-card,.vip-box{border-radius:22px!important}
.icon,.phase-number{color:#062116!important;background:linear-gradient(135deg,#7de2b8,#79cbd4)!important}
.progress span{background:linear-gradient(90deg,#7de2b8,#79cbd4)!important}
.phase>span,.phase-label{color:#7de2b8!important}
.footer{border-top:1px solid var(--stroke)!important;color:#83948f!important;background:transparent!important}

/* Reproductor protegido */
.r21-audio-source{display:none!important}
.r21-player{
  display:grid;
  gap:14px;
  margin-top:18px;
  padding:18px;
  border:1px solid rgba(125,226,184,.2);
  border-radius:18px;
  background:rgba(3,15,11,.42);
  user-select:none;
}
.r21-player-top{display:flex;align-items:center;justify-content:space-between;gap:14px}
.r21-player-label{color:#dce7e2;font-size:.82rem;font-weight:700;letter-spacing:.04em}
.r21-player-status{color:#83948f;font-size:.76rem}
.r21-controls{display:grid;grid-template-columns:auto auto auto 1fr;gap:9px;align-items:center}
.r21-control{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid var(--stroke);
  border-radius:13px;
  color:#f8faf7;
  background:rgba(255,255,255,.055);
  cursor:pointer;
  transition:transform .2s ease,background .2s ease;
}
.r21-control:hover{transform:translateY(-1px);background:rgba(255,255,255,.09)}
.r21-control.play{color:#062116;background:#7de2b8;border-color:#7de2b8}
.r21-progress{width:100%;height:6px;accent-color:#7de2b8;cursor:pointer}
.r21-player-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;color:#83948f;font-size:.74rem}
.r21-start-note{color:#9eb0aa}

/* Acceso */
.auth-modal{background:rgba(2,9,7,.9)!important;backdrop-filter:blur(16px)!important}
.auth-box{border:1px solid rgba(125,226,184,.2)!important;border-radius:28px!important;background:#10251d!important;box-shadow:0 28px 90px rgba(0,0,0,.35)!important}
.auth-logo{background:var(--gradient)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important}
.auth-box input{color:#f8faf7!important;border-color:var(--stroke)!important;background:rgba(0,0,0,.16)!important}
.auth-box input:focus{border-color:rgba(125,226,184,.55)!important;box-shadow:0 0 0 3px rgba(125,226,184,.08)!important}
.auth-box button{color:#062116!important;background:#7de2b8!important;box-shadow:none!important}

/* Confirmación */
.wrapper>.card{border:1px solid rgba(125,226,184,.22)!important;background:linear-gradient(145deg,#123126,#0b1c16)!important;box-shadow:0 28px 90px rgba(0,0,0,.28)!important}
.check{color:#062116!important;background:#7de2b8!important;box-shadow:0 0 0 12px rgba(125,226,184,.08)!important}
.particles{opacity:.28}

/* Legal */
.sidebar a{color:#b8c5c1!important}
.sidebar a:hover{color:#7de2b8!important;background:rgba(125,226,184,.07)!important}
.content li::marker{color:#7de2b8}

@media(max-width:760px){
  .r21-controls{grid-template-columns:auto auto auto;align-items:center}
  .r21-progress{grid-column:1/-1;margin-top:4px}
  .r21-player{padding:15px}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
