
:root{
  --blue:#123fbe;
  --blue-dark:#0d3199;
  --yellow:#f4d231;
  --yellow-soft:#fff7cc;
  --text:#161b26;
  --muted:#737b8c;
  --line:#e7eaf0;
  --surface:#ffffff;
  --soft:#f7f8fb;
  --danger:#b42318;
  --danger-bg:#fff1f0;
  --success:#087443;
  --success-bg:#edfdf3;
  --info:#1849a9;
  --info-bg:#eff4ff;
}

*{
  box-sizing:border-box;
}

html,body{
  margin:0;
  min-height:100%;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--text);
  background:#fff;
  -webkit-font-smoothing:antialiased;
}

a{
  color:inherit;
}

.auth-shell{
  min-height:100vh;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:40px 20px;
  background:#fff;
}

.auth-shell-register{
  align-items:flex-start;
}

.auth-box{
  width:100%;
  max-width:430px;
}

.auth-box-wide{
  max-width:620px;
}

.logo-link{
  display:block;
  width:max-content;
  margin:0 auto 46px;
}

.logo{
  display:block;
  width:190px;
  max-width:75vw;
  height:auto;
  margin:0 auto 46px;
}

.logo-link .logo{
  margin:0;
}

.auth-header{
  margin-bottom:30px;
  text-align:left;
}

.auth-header h1{
  margin:0 0 8px;
  font-size:34px;
  line-height:1.1;
  letter-spacing:-.035em;
  font-weight:800;
}

.auth-header p{
  margin:0;
  color:var(--muted);
  font-size:15px;
  line-height:1.55;
}

.form{
  display:grid;
  gap:18px;
}

.form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.form-row-phone{
  grid-template-columns:110px 1fr;
}

.field{
  display:grid;
  gap:8px;
}

.field label{
  font-size:13px;
  font-weight:700;
  color:#3b4352;
}

.label-muted{
  font-weight:500;
  color:#98a0af;
}

.field input,
.field select{
  width:100%;
  height:52px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  color:var(--text);
  padding:0 15px;
  font-size:16px;
  outline:none;
  transition:border-color .18s ease,box-shadow .18s ease;
}

.field input::placeholder{
  color:#a3a9b4;
}

.field input:focus,
.field select:focus{
  border-color:var(--blue);
  box-shadow:0 0 0 4px rgba(18,63,190,.09);
}

.password-field{
  position:relative;
}

.password-field input{
  padding-right:90px;
}

.show-password{
  position:absolute;
  right:9px;
  top:50%;
  transform:translateY(-50%);
  border:0;
  background:transparent;
  color:var(--blue);
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  padding:8px 9px;
}

.button{
  width:100%;
  min-height:52px;
  border-radius:14px;
  border:0;
  padding:0 18px;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
  text-decoration:none;
  display:flex;
  justify-content:center;
  align-items:center;
}

.button-primary{
  color:#fff;
  background:var(--blue);
  box-shadow:0 8px 20px rgba(18,63,190,.12);
}

.button-primary:hover{
  background:var(--blue-dark);
}

.button-secondary{
  color:var(--blue);
  background:#fff;
  border:1px solid var(--line);
}

.auth-switch{
  margin:24px 0 0;
  text-align:center;
  color:var(--muted);
  font-size:14px;
}

.auth-switch a{
  color:var(--blue);
  font-weight:800;
  text-decoration:none;
}

.terms{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:var(--muted);
  font-size:13px;
  line-height:1.45;
}

.terms input{
  width:17px;
  height:17px;
  margin-top:1px;
  accent-color:var(--blue);
}

.alert{
  border-radius:13px;
  padding:13px 14px;
  margin-bottom:20px;
  font-size:14px;
  line-height:1.45;
}

.alert-error{
  color:var(--danger);
  background:var(--danger-bg);
  border:1px solid #ffd2cf;
}

.alert-success{
  color:var(--success);
  background:var(--success-bg);
  border:1px solid #b7efce;
}

.alert-info{
  color:var(--info);
  background:var(--info-bg);
  border:1px solid #c7d7fe;
}

.code-input{
  text-align:center;
  font-size:25px!important;
  font-weight:800;
  letter-spacing:.3em;
}

.resend-form{
  margin-top:12px;
}

.app-header{
  height:72px;
  border-bottom:1px solid var(--line);
  background:#fff;
}

.app-header-inner{
  max-width:900px;
  height:100%;
  margin:auto;
  padding:0 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.app-logo{
  width:130px;
  height:auto;
}

.logout-link{
  color:var(--blue);
  font-size:14px;
  font-weight:700;
  text-decoration:none;
}

.dashboard{
  max-width:760px;
  margin:auto;
  padding:54px 20px 80px;
}

.welcome{
  margin-bottom:32px;
}

.eyebrow{
  margin:0 0 7px;
  color:var(--blue);
  font-size:12px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}

.welcome h1{
  margin:0 0 8px;
  font-size:36px;
  letter-spacing:-.04em;
}

.welcome > p:last-child{
  margin:0;
  color:var(--muted);
}

.profile-card,
.coming-card{
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
}

.profile-card{
  padding:22px;
}

.profile-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  padding-bottom:20px;
  margin-bottom:6px;
  border-bottom:1px solid var(--line);
}

.profile-top > div{
  display:grid;
  gap:4px;
}

.label-small{
  color:var(--muted);
  font-size:12px;
}

.profile-top strong{
  font-size:20px;
}

.level-pill{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  border-radius:999px;
  padding:0 12px;
  background:var(--yellow-soft);
  color:#7b6200;
  font-size:12px;
  font-weight:800;
}

.profile-row{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:15px 0;
  border-bottom:1px solid var(--line);
  font-size:14px;
}

.profile-row:last-child{
  border-bottom:0;
  padding-bottom:0;
}

.profile-row span{
  color:var(--muted);
}

.coming-card{
  margin-top:18px;
  padding:20px;
  display:flex;
  gap:16px;
  background:#fafbff;
}

.coming-icon{
  width:38px;
  height:38px;
  flex:0 0 38px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--blue);
  color:#fff;
  font-weight:900;
}

.coming-card strong{
  display:block;
  margin-bottom:4px;
}

.coming-card p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.5;
}

@media(max-width:620px){
  .auth-shell{
    align-items:flex-start;
    padding:30px 20px 50px;
  }

  .logo,
  .logo-link{
    margin-bottom:40px;
  }

  .logo{
    width:165px;
  }

  .auth-header h1{
    font-size:31px;
  }

  .form-row,
  .form-row-phone{
    grid-template-columns:1fr;
  }

  .dashboard{
    padding-top:36px;
  }

  .welcome h1{
    font-size:31px;
  }
}


/* =========================================================
   EMONY — LOGO ANIMADO V1.2
   Ajustado contra el logo original:
   - boomerangs más cerca del wordmark
   - izquierdo ligeramente más arriba
   - derecho ligeramente más abajo
   - glow sin recorte
   ========================================================= */

.emony-logo-animation{
  --emony-logo-width:320px;
  --emony-logo-height:150px;
  --emony-boom-width:64px;
  --emony-word-width:210px;

  position:relative;
  width:var(--emony-logo-width);
  height:var(--emony-logo-height);
  margin:0 auto 34px;
  overflow:visible;
  isolation:isolate;
  user-select:none;
}

.emony-logo-animation img{
  -webkit-user-drag:none;
  pointer-events:none;
}

.emony-logo-piece{
  position:absolute;
  top:50%;
  width:var(--emony-boom-width);
  height:auto;
  z-index:3;
  will-change:transform,left,right,filter,opacity;
}

/* Posiciones iniciales: juntos, apenas desfasados verticalmente */
.emony-logo-piece-left{
  left:49%;
  transform:translate(-50%,-54%) scale(.84);
  animation:emonyBoomLeft 2.35s cubic-bezier(.2,.72,.25,1) both;
}

.emony-logo-piece-right{
  right:49%;
  transform:translate(50%,-40%) scale(.84);
  animation:emonyBoomRight 2.35s cubic-bezier(.2,.72,.25,1) both;
}

.emony-logo-wordmark{
  position:absolute;
  z-index:2;
  top:50%;
  left:50%;
  width:var(--emony-word-width);
  max-height:86px;
  object-fit:contain;
  opacity:0;
  transform:translate(-50%,-50%) scale(.94);
  filter:blur(6px);
  will-change:opacity,transform,filter;
  animation:emonyWordReveal 2.35s cubic-bezier(.22,.7,.25,1) both;
}

/* Destello central */
.emony-logo-energy{
  position:absolute;
  z-index:1;
  left:50%;
  top:50%;
  width:28px;
  height:28px;
  transform:translate(-50%,-50%) scale(.2);
  border-radius:50%;
  opacity:0;
  background:
    radial-gradient(circle,
      rgba(255,255,255,1) 0 7%,
      rgba(255,240,180,.96) 10%,
      rgba(244,210,49,.88) 22%,
      rgba(244,210,49,.45) 40%,
      rgba(244,210,49,.12) 60%,
      rgba(244,210,49,0) 78%);
  filter:blur(1px);
  box-shadow:
    0 0 18px rgba(255,224,75,.75),
    0 0 48px rgba(244,210,49,.40),
    0 0 90px rgba(244,210,49,.18);
  animation:emonyEnergy 1.20s ease-out .14s both;
}

/* Reflejo final */
.emony-logo-reflection{
  position:absolute;
  z-index:5;
  top:14%;
  bottom:14%;
  left:-34%;
  width:22%;
  opacity:0;
  pointer-events:none;
  transform:skewX(-18deg);
  background:linear-gradient(
    100deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.08) 25%,
    rgba(255,255,255,.78) 48%,
    rgba(255,255,255,.16) 66%,
    rgba(255,255,255,0) 100%
  );
  filter:blur(3px);
  animation:emonyReflection .75s ease-in-out 1.88s both;
}

/* Izquierdo: termina más adentro y un poco más arriba */
@keyframes emonyBoomLeft{
  0%,10%{
    left:49%;
    transform:translate(-50%,-54%) scale(.84);
    filter:brightness(.98);
  }
  24%{
    left:46%;
    transform:translate(-50%,-54%) scale(.92);
    filter:brightness(1.32) drop-shadow(0 0 12px rgba(244,210,49,.45));
  }
  52%{
    left:30%;
    transform:translate(-50%,-54%) scale(1.01);
    filter:brightness(1.10) drop-shadow(0 0 8px rgba(244,210,49,.22));
  }
  78%{
    left:24.5%;
    transform:translate(-50%,-54%) scale(1);
    filter:brightness(1);
  }
  100%{
    left:23.2%;
    transform:translate(-50%,-54%) scale(1);
    filter:brightness(1);
  }
}

/* Derecho: termina más adentro y un poco más abajo */
@keyframes emonyBoomRight{
  0%,10%{
    right:49%;
    transform:translate(50%,-40%) scale(.84);
    filter:brightness(.98);
  }
  24%{
    right:46%;
    transform:translate(50%,-40%) scale(.92);
    filter:brightness(1.32) drop-shadow(0 0 12px rgba(244,210,49,.45));
  }
  52%{
    right:30%;
    transform:translate(50%,-40%) scale(1.01);
    filter:brightness(1.10) drop-shadow(0 0 8px rgba(244,210,49,.22));
  }
  78%{
    right:24.5%;
    transform:translate(50%,-40%) scale(1);
    filter:brightness(1);
  }
  100%{
    right:23.2%;
    transform:translate(50%,-40%) scale(1);
    filter:brightness(1);
  }
}

@keyframes emonyWordReveal{
  0%,30%{
    opacity:0;
    transform:translate(-50%,-50%) scale(.92);
    filter:blur(7px);
  }
  48%{
    opacity:.22;
    transform:translate(-50%,-50%) scale(.96);
    filter:blur(4px);
  }
  68%{
    opacity:.85;
    transform:translate(-50%,-50%) scale(.995);
    filter:blur(1px);
  }
  82%,100%{
    opacity:1;
    transform:translate(-50%,-50%) scale(1);
    filter:blur(0);
  }
}

@keyframes emonyEnergy{
  0%{
    opacity:0;
    transform:translate(-50%,-50%) scale(.18);
  }
  22%{
    opacity:1;
    transform:translate(-50%,-50%) scale(1.15);
  }
  50%{
    opacity:.92;
    transform:translate(-50%,-50%) scale(4.8);
  }
  100%{
    opacity:0;
    transform:translate(-50%,-50%) scale(8.8);
  }
}

@keyframes emonyReflection{
  0%{
    left:-34%;
    opacity:0;
  }
  14%{
    opacity:.9;
  }
  75%{
    opacity:.55;
  }
  100%{
    left:118%;
    opacity:0;
  }
}

/* Móvil: mantiene la misma proporción y desfase */
@media(max-width:620px){
  .emony-logo-animation{
    --emony-logo-width:250px;
    --emony-logo-height:130px;
    --emony-boom-width:52px;
    --emony-word-width:172px;
    margin-bottom:28px;
  }
}

/* Accesibilidad */
@media(prefers-reduced-motion:reduce){
  .emony-logo-piece-left,
  .emony-logo-piece-right,
  .emony-logo-wordmark,
  .emony-logo-energy,
  .emony-logo-reflection{
    animation:none!important;
  }

  .emony-logo-piece-left{
    left:23.2%;
    transform:translate(-50%,-54%);
  }

  .emony-logo-piece-right{
    right:23.2%;
    transform:translate(50%,-40%);
  }

  .emony-logo-wordmark{
    opacity:1;
    filter:none;
    transform:translate(-50%,-50%);
  }

  .emony-logo-energy,
  .emony-logo-reflection{
    display:none;
  }
}


/* =========================================================
   EMONY — AJUSTE EXCLUSIVO PARA TELÉFONO
   Más separación entre boomerangs y wordmark.
   Desktop queda sin cambios.
   ========================================================= */
@media (max-width: 620px){

  .emony-logo-piece-left{
    animation-name: emonyBoomLeftMobile;
  }

  .emony-logo-piece-right{
    animation-name: emonyBoomRightMobile;
  }

  @keyframes emonyBoomLeftMobile{
    0%,10%{
      left:49%;
      transform:translate(-50%,-54%) scale(.84);
      filter:brightness(.98);
    }
    24%{
      left:45%;
      transform:translate(-50%,-54%) scale(.92);
      filter:brightness(1.32) drop-shadow(0 0 12px rgba(244,210,49,.45));
    }
    52%{
      left:27%;
      transform:translate(-50%,-54%) scale(1.01);
      filter:brightness(1.10) drop-shadow(0 0 8px rgba(244,210,49,.22));
    }
    78%{
      left:21.5%;
      transform:translate(-50%,-54%) scale(1);
      filter:brightness(1);
    }
    100%{
      left:20.5%;
      transform:translate(-50%,-54%) scale(1);
      filter:brightness(1);
    }
  }

  @keyframes emonyBoomRightMobile{
    0%,10%{
      right:49%;
      transform:translate(50%,-40%) scale(.84);
      filter:brightness(.98);
    }
    24%{
      right:45%;
      transform:translate(50%,-40%) scale(.92);
      filter:brightness(1.32) drop-shadow(0 0 12px rgba(244,210,49,.45));
    }
    52%{
      right:27%;
      transform:translate(50%,-40%) scale(1.01);
      filter:brightness(1.10) drop-shadow(0 0 8px rgba(244,210,49,.22));
    }
    78%{
      right:21.5%;
      transform:translate(50%,-40%) scale(1);
      filter:brightness(1);
    }
    100%{
      right:20.5%;
      transform:translate(50%,-40%) scale(1);
      filter:brightness(1);
    }
  }
}


/* =========================================================
   EMONY — AJUSTE MÓVIL FINAL
   Más separación entre boomerangs y wordmark.
   Desktop queda sin cambios.
   ========================================================= */
@media (max-width: 620px){

  .emony-logo-piece-left{
    animation-name: emonyBoomLeftMobileFinal;
  }

  .emony-logo-piece-right{
    animation-name: emonyBoomRightMobileFinal;
  }

  @keyframes emonyBoomLeftMobileFinal{
    0%,10%{
      left:49%;
      transform:translate(-50%,-54%) scale(.84);
      filter:brightness(.98);
    }
    24%{
      left:44%;
      transform:translate(-50%,-54%) scale(.92);
      filter:brightness(1.32) drop-shadow(0 0 12px rgba(244,210,49,.45));
    }
    52%{
      left:25%;
      transform:translate(-50%,-54%) scale(1.01);
      filter:brightness(1.10) drop-shadow(0 0 8px rgba(244,210,49,.22));
    }
    78%{
      left:19.2%;
      transform:translate(-50%,-54%) scale(1);
      filter:brightness(1);
    }
    100%{
      left:18.2%;
      transform:translate(-50%,-54%) scale(1);
      filter:brightness(1);
    }
  }

  @keyframes emonyBoomRightMobileFinal{
    0%,10%{
      right:49%;
      transform:translate(50%,-40%) scale(.84);
      filter:brightness(.98);
    }
    24%{
      right:44%;
      transform:translate(50%,-40%) scale(.92);
      filter:brightness(1.32) drop-shadow(0 0 12px rgba(244,210,49,.45));
    }
    52%{
      right:25%;
      transform:translate(50%,-40%) scale(1.01);
      filter:brightness(1.10) drop-shadow(0 0 8px rgba(244,210,49,.22));
    }
    78%{
      right:19.2%;
      transform:translate(50%,-40%) scale(1);
      filter:brightness(1);
    }
    100%{
      right:18.2%;
      transform:translate(50%,-40%) scale(1);
      filter:brightness(1);
    }
  }
}


/* ========================================
   EMONY SECURITY / PIN
   ======================================== */

.remember-device{
  display:flex;
  align-items:flex-start;
  gap:11px;
  cursor:pointer;
  color:var(--muted);
  font-size:13px;
  line-height:1.35;
}

.remember-device input{
  width:18px;
  height:18px;
  margin:2px 0 0;
  accent-color:var(--blue);
  flex:0 0 auto;
}

.remember-device span{
  display:grid;
  gap:2px;
}

.remember-device strong{
  color:#3b4352;
  font-size:13px;
}

.remember-device small{
  color:#8a93a3;
  font-size:12px;
}

.pin-box{
  text-align:center;
}

.pin-logo{
  margin-bottom:34px;
}

.pin-header{
  margin-bottom:28px;
}

.pin-header p{
  margin:0 0 5px;
  color:var(--muted);
  font-size:15px;
}

.pin-header h1{
  margin:0;
  font-size:31px;
  letter-spacing:-.035em;
}

.pin-form{
  position:relative;
  display:grid;
  gap:20px;
}

.pin-input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}

.pin-dots{
  display:flex;
  justify-content:center;
  gap:18px;
  margin:6px 0 12px;
}

.pin-dots span{
  width:18px;
  height:18px;
  border-radius:50%;
  border:2px solid #cad0db;
  background:#fff;
  transition:.15s ease;
}

.pin-dots span.filled{
  background:var(--blue);
  border-color:var(--blue);
  transform:scale(1.08);
}

.pin-links{
  margin-top:22px;
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  color:var(--muted);
  font-size:13px;
}

.pin-links a{
  color:var(--blue);
  font-weight:700;
  text-decoration:none;
}

.security-card-copy{
  flex:1;
}

.security-link{
  display:inline-block;
  margin-top:8px;
  color:var(--blue);
  font-size:13px;
  font-weight:800;
  text-decoration:none;
}

.security-enabled{
  display:flex;
  gap:14px;
  align-items:flex-start;
  margin-bottom:22px;
}

.security-check{
  width:40px;
  height:40px;
  border-radius:50%;
  display:grid;
  place-items:center;
  flex:0 0 40px;
  background:#edfdf3;
  color:#087443;
  font-weight:900;
  font-size:20px;
}

.security-enabled strong{
  display:block;
  margin:2px 0 4px;
}

.security-enabled p{
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.security-page .profile-card{
  max-width:540px;
}


/* =========================================================
   EMONY — REGISTRO POR PASOS V1
   Mobile first · limpio · una decisión por pantalla
   ========================================================= */

.register-flow-page{
  background:#fff;
  overflow-x:hidden;
}

.register-flow-shell{
  width:100%;
  min-height:100svh;
  background:#fff;
  padding:
    calc(18px + env(safe-area-inset-top))
    20px
    calc(38px + env(safe-area-inset-bottom));
}

.register-brand{
  width:100%;
  max-width:540px;
  min-height:82px;
  margin:0 auto 10px;
  display:grid;
  grid-template-columns:44px 1fr 44px;
  align-items:center;
}

.register-back,
.register-back-spacer{
  width:44px;
  height:44px;
}

.register-back{
  display:grid;
  place-items:center;
  text-decoration:none;
  border-radius:50%;
  color:#1d2636;
  font-size:37px;
  font-weight:300;
  line-height:1;
  transition:background .15s ease;
}

.register-back:active{
  background:#f2f4f7;
}

.register-logo-wrap{
  display:flex;
  justify-content:center;
  min-width:0;
}

/*
 El logo usa exactamente la animación actual,
 pero ocupa menos espacio dentro del registro.
*/
.register-logo{
  --emony-logo-width:210px !important;
  --emony-logo-height:86px !important;
  --emony-boom-width:45px !important;
  --emony-word-width:145px !important;

  margin:0 !important;
}

.register-flow{
  width:100%;
  max-width:540px;
  margin:0 auto;
}

.register-progress{
  margin:4px 0 34px;
}

.register-progress-top{
  display:flex;
  justify-content:space-between;
  gap:20px;
  margin-bottom:9px;
  color:#8b93a3;
  font-size:12px;
  font-weight:700;
}

#registerStepName{
  color:#3c4555;
}

.register-progress-track{
  position:relative;
  height:4px;
  border-radius:999px;
  overflow:hidden;
  background:#eef0f4;
}

.register-progress-track span{
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:16.666%;
  border-radius:999px;
  background:var(--blue);
  transition:width .34s cubic-bezier(.2,.7,.25,1);
}

.register-server-error{
  margin-bottom:24px;
}

.register-step{
  display:none;
  animation:registerStepIn .28s cubic-bezier(.2,.7,.25,1);
}

.register-step.active{
  display:block;
}

@keyframes registerStepIn{
  from{
    opacity:0;
    transform:translateX(12px);
  }
  to{
    opacity:1;
    transform:translateX(0);
  }
}

.register-step-copy{
  margin-bottom:24px;
}

.register-kicker{
  display:block;
  margin-bottom:7px;
  color:var(--blue);
  font-size:12px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.register-step-copy h1{
  margin:0 0 9px;
  color:#171c27;
  font-size:33px;
  line-height:1.08;
  letter-spacing:-.04em;
  font-weight:820;
}

.register-step-copy p{
  margin:0;
  max-width:440px;
  color:#7d8595;
  font-size:15px;
  line-height:1.55;
}

.register-card{
  display:grid;
  gap:18px;
  padding:22px;
  border:1px solid #e7eaf0;
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 34px rgba(17,24,39,.045);
}

.register-card .field input,
.register-card .field select{
  height:56px;
  border-radius:16px;
}

.phone-group{
  display:grid;
  grid-template-columns:105px 1fr;
  gap:12px;
}

.field-hint{
  display:block;
  margin-top:1px;
  color:#959dac;
  font-size:12px;
  line-height:1.4;
}

.password-meter{
  width:100%;
  height:5px;
  border-radius:999px;
  background:#edf0f4;
  overflow:hidden;
}

.password-meter span{
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
  background:var(--blue);
  transition:width .2s ease;
}

.password-hint{
  margin:-6px 0 0;
  color:#8a93a3;
  font-size:12px;
}

.referral-info{
  display:flex;
  align-items:flex-start;
  gap:13px;
  padding:15px;
  border-radius:16px;
  background:#fff9dc;
}

.referral-icon{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:50%;
  background:var(--yellow);
  color:#554700;
  font-size:20px;
  font-weight:800;
}

.referral-info strong{
  display:block;
  margin-bottom:3px;
  color:#37301a;
  font-size:13px;
}

.referral-info p{
  margin:0;
  color:#746b4d;
  font-size:12px;
  line-height:1.45;
}

.register-terms{
  margin-top:2px;
}

.register-actions{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px;
  margin-top:24px;
}

.register-actions .button[hidden],
.register-secondary[hidden]{
  display:none;
}

.register-secondary{
  min-width:90px;
  min-height:52px;
  padding:0 17px;
  border:1px solid #e3e7ed;
  border-radius:14px;
  background:#fff;
  color:#525b6b;
  font-size:14px;
  font-weight:750;
  cursor:pointer;
}

.register-next{
  grid-column:2;
}

.register-actions .register-next:only-child{
  grid-column:1 / -1;
}

.register-login-link{
  margin:24px 0 0;
  text-align:center;
  color:#8a93a3;
  font-size:13px;
}

.register-login-link a{
  color:var(--blue);
  font-weight:800;
  text-decoration:none;
}

.register-input-error{
  border-color:#e5484d !important;
  box-shadow:0 0 0 4px rgba(229,72,77,.08) !important;
}

.register-field-error{
  margin:2px 0 0;
  color:#c23136;
  font-size:12px;
  font-weight:600;
}

@media(max-width:620px){

  .register-flow-shell{
    padding-left:20px;
    padding-right:20px;
  }

  .register-brand{
    min-height:76px;
    margin-bottom:6px;
  }

  .register-logo{
    --emony-logo-width:190px !important;
    --emony-logo-height:78px !important;
    --emony-boom-width:41px !important;
    --emony-word-width:132px !important;
  }

  .register-progress{
    margin-bottom:28px;
  }

  .register-step-copy h1{
    font-size:31px;
  }

  .register-card{
    padding:18px;
    border-radius:20px;
  }

  .phone-group{
    grid-template-columns:92px 1fr;
    gap:10px;
  }
}

@media(max-width:370px){

  .register-flow-shell{
    padding-left:16px;
    padding-right:16px;
  }

  .register-card{
    padding:16px;
  }

  .phone-group{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   EMONY SECURITY V2 — Recuperación de contraseña
   ========================================================= */

.forgot-password-row{
  display:flex;
  justify-content:flex-end;
  margin-top:-5px;
}

.forgot-password-row a{
  color:var(--blue);
  font-size:13px;
  font-weight:750;
  text-decoration:none;
}

.recovery-box{
  max-width:460px;
}

.recovery-logo{
  margin-bottom:34px;
}

.recovery-copy{
  margin-bottom:26px;
}

.recovery-copy h1,
.recovery-success h1{
  margin:0 0 10px;
  color:#171c27;
  font-size:30px;
  line-height:1.12;
  letter-spacing:-.035em;
}

.recovery-copy p,
.recovery-success p{
  margin:0;
  color:#7d8595;
  font-size:14px;
  line-height:1.6;
}

.recovery-success{
  text-align:center;
}

.recovery-success .security-check{
  margin:0 auto 18px;
}

.recovery-button-link{
  display:flex;
  align-items:center;
  justify-content:center;
  margin-top:26px;
  text-decoration:none;
}

.recovery-back{
  margin:22px 0 0;
  text-align:center;
}

.recovery-back a{
  color:var(--blue);
  font-size:13px;
  font-weight:750;
  text-decoration:none;
}

/* =========================================================
   EMONY SECURITY V3 — PIN móvil compacto
   ========================================================= */
html, body{touch-action:manipulation;}

.pin-access-page{
  background:#fff;
  min-height:100svh;
  overflow-x:hidden;
  -webkit-text-size-adjust:100%;
}

.pin-access-shell{
  min-height:100svh;
  width:100%;
  display:flex;
  justify-content:center;
  align-items:flex-start;
  padding:calc(62px + env(safe-area-inset-top)) 20px calc(28px + env(safe-area-inset-bottom));
}

.pin-access-card{
  width:100%;
  max-width:430px;
  text-align:center;
}

.pin-access-header{
  margin:0 0 24px;
}

.pin-greeting{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin-bottom:8px;
  color:#7e8798;
  font-size:18px;
  line-height:1.3;
}

.pin-greeting img{
  width:25px;
  height:25px;
  object-fit:contain;
  flex:0 0 auto;
}

.pin-greeting strong{
  color:#697386;
  font-weight:650;
}

.pin-access-header h1{
  margin:0;
  color:#171c27;
  font-size:39px;
  line-height:1.08;
  letter-spacing:-.045em;
  font-weight:820;
}

.pin-error{
  margin:0 auto 16px;
}

.pin-screen-form{
  display:grid;
  gap:24px;
}

.pin-screen-dots{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  min-height:30px;
}

.pin-screen-dots span{
  width:17px;
  height:17px;
  border:3px solid #cdd3de;
  border-radius:50%;
  background:#fff;
  transition:transform .12s ease,background .12s ease,border-color .12s ease;
}

.pin-screen-dots span.filled{
  background:#2148c8;
  border-color:#2148c8;
  transform:scale(1.08);
}

.pin-keypad{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  width:100%;
  max-width:350px;
  /* EMONY PIN V3.2: baja solo el teclado; encabezado y puntos no se mueven */
  margin:28px auto 0;
}

.pin-key{
  aspect-ratio:1.18 / 1;
  min-height:74px;
  border:1px solid #dfe4ed;
  border-radius:22px;
  background:#fff;
  box-shadow:0 10px 30px rgba(20,34,70,.045);
  color:#171c27;
  font:800 31px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}

.pin-key:active{
  transform:scale(.97);
  background:#f7f9ff;
}

.pin-key-delete{
  color:#2148c8;
  font-size:25px;
}

.pin-key-spacer{
  display:block;
}

.pin-access-links{
  margin-top:20px;
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  color:#a0a7b4;
  font-size:12px;
}

.pin-access-links a{
  color:#2148c8;
  text-decoration:none;
  font-weight:750;
}

@media(max-width:390px){
  .pin-access-shell{
    padding-top:calc(44px + env(safe-area-inset-top));
  }
  .pin-access-header h1{font-size:35px;}
  .pin-keypad{max-width:330px;gap:10px;}
  .pin-key{min-height:68px;border-radius:20px;font-size:29px;}
}


/* =========================================================
   EMONY V3.1 — Términos obligatorios visibles
   ========================================================= */

.register-terms{
  transition:color .18s ease;
}

.register-terms.terms-error{
  color:#c62828 !important;
}

.register-terms.terms-error span{
  color:#c62828 !important;
  font-weight:650;
}

.register-terms.terms-error input{
  outline:2px solid #e5484d;
  outline-offset:3px;
  border-radius:4px;
}

.register-terms.terms-error::after{
  content:"Debes aceptar los términos y condiciones para continuar.";
  display:block;
  width:100%;
  margin-top:7px;
  color:#c62828;
  font-size:12px;
  line-height:1.4;
  font-weight:650;
}


/* =========================================================
   EMONY V3.3 — NIVELES BRONCE / PLATA / ORO
   ========================================================= */

.customer-dashboard{
  padding-bottom:calc(80px + env(safe-area-inset-bottom));
}

.customer-welcome{
  margin-bottom:25px;
}

.level-card{
  position:relative;
  overflow:hidden;
  margin-bottom:22px;
  padding:22px;
  border:1px solid #e5e9f0;
  border-radius:26px;
  background:#fff;
  box-shadow:0 14px 40px rgba(17,24,39,.045);
}

.level-main{
  display:flex;
  align-items:center;
  gap:18px;
}

.level-coin-wrap{
  position:relative;
  width:92px;
  height:92px;
  flex:0 0 92px;
  display:grid;
  place-items:center;
}

.level-glow{
  position:absolute;
  inset:13px;
  border-radius:50%;
  filter:blur(18px);
  opacity:.18;
}

.level-bronze .level-glow{
  background:#d47734;
}

.level-silver .level-glow{
  background:#b6bcc5;
}

.level-gold .level-glow{
  background:#f4cf3b;
}

.level-coin{
  position:relative;
  z-index:1;
  display:block;
  width:88px;
  height:88px;
  object-fit:contain;
  filter:drop-shadow(0 9px 11px rgba(17,24,39,.11));
}

.level-copy{
  min-width:0;
  flex:1;
}

.level-overline{
  display:block;
  margin-bottom:3px;
  color:#8a93a3;
  font-size:12px;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
}

.level-name-row{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
}

.level-copy h2{
  margin:0;
  color:#171c27;
  font-size:31px;
  line-height:1.05;
  letter-spacing:-.04em;
}

.level-copy p{
  margin:6px 0 0;
  color:#687284;
  font-size:14px;
  font-weight:650;
}

.level-manual-pill{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 9px;
  border-radius:999px;
  background:#eff3ff;
  color:#2448c7;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.level-month{
  margin-top:21px;
  padding-top:18px;
  border-top:1px solid #edf0f4;
}

.level-month-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  color:#858e9f;
  font-size:13px;
}

.level-month-row strong{
  color:#252b37;
  font-size:14px;
}

.level-progress{
  position:relative;
  height:7px;
  margin-top:13px;
  overflow:hidden;
  border-radius:999px;
  background:#eff1f5;
}

.level-progress span{
  display:block;
  height:100%;
  min-width:3px;
  border-radius:inherit;
  transition:width .35s ease;
}

.level-bronze .level-progress span{
  background:linear-gradient(90deg,#b85e27,#e99b57);
}

.level-silver .level-progress span{
  background:linear-gradient(90deg,#8f959d,#e7e9ec);
}

.level-gold .level-progress span{
  background:linear-gradient(90deg,#d89a11,#f8d94a);
}

.level-helper{
  margin:10px 0 0;
  color:#929aa8;
  font-size:12px;
  line-height:1.5;
}

.level-helper strong{
  color:#4a5362;
}

.compact-profile{
  margin-top:0;
}

.admin-level-page{
  max-width:740px;
}

.admin-level-search{
  margin-bottom:18px;
}

.admin-user-results{
  display:grid;
  gap:9px;
  margin-bottom:22px;
}

.admin-user-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding:15px 17px;
  border:1px solid #e5e9f0;
  border-radius:17px;
  background:#fff;
  color:#1b2130;
  text-decoration:none;
}

.admin-user-row div{
  min-width:0;
}

.admin-user-row strong{
  display:block;
  margin-bottom:3px;
  font-size:14px;
}

.admin-user-row span{
  color:#8a93a3;
  font-size:12px;
}

.admin-user-row > span{
  flex:0 0 auto;
  color:#1745c7;
  font-size:25px;
}

.admin-empty{
  color:#8a93a3;
  text-align:center;
}

.admin-selected-level{
  margin-top:20px;
}

@media(max-width:620px){

  .level-card{
    padding:19px;
    border-radius:23px;
  }

  .level-main{
    gap:14px;
  }

  .level-coin-wrap{
    width:82px;
    height:82px;
    flex-basis:82px;
  }

  .level-coin{
    width:78px;
    height:78px;
  }

  .level-copy h2{
    font-size:28px;
  }
}


/* =========================================================
   EMONY V3.3.3 — DASHBOARD CLIENTE LIMPIO
   Nivel integrado al encabezado
   ========================================================= */

.customer-dashboard{
  padding-top:36px;
}

.customer-hero{
  margin:0 0 34px;
}

.customer-hero h1{
  margin:0;
  color:#171c27;
  font-size:44px;
  line-height:1.04;
  letter-spacing:-.045em;
  font-weight:820;
}

.customer-level-inline{
  display:flex;
  align-items:center;
  gap:11px;
  width:max-content;
  max-width:100%;
  margin-top:17px;
}

.customer-level-coin-wrap{
  position:relative;
  width:44px;
  height:44px;
  flex:0 0 44px;
  display:grid;
  place-items:center;
}

.customer-level-glow{
  position:absolute;
  inset:5px;
  border-radius:50%;
  filter:blur(10px);
  opacity:.34;
  transform:scale(1.12);
}

.level-inline-bronze .customer-level-glow{
  background:#d77a38;
}

.level-inline-silver .customer-level-glow{
  background:#b8bec7;
}

.level-inline-gold .customer-level-glow{
  background:#f0c52f;
}

.customer-level-coin{
  position:relative;
  z-index:1;
  width:42px;
  height:42px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 5px 7px rgba(17,24,39,.13));
}

.customer-level-text{
  display:flex;
  align-items:baseline;
  gap:5px;
  min-width:0;
  color:#7d8595;
  font-size:17px;
  line-height:1;
}

.customer-level-text span{
  font-weight:500;
}

.customer-level-text strong{
  color:#3e4655;
  font-weight:760;
}

.customer-level-text small{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  margin-left:4px;
  padding:0 8px;
  border-radius:999px;
  background:#f2f5ff;
  color:#2448c7;
  font-size:9px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.customer-dashboard .compact-profile{
  margin-top:0;
}

/* La tarjeta grande anterior ya no se usa en dashboard.php */
.customer-dashboard > .level-card{
  display:none !important;
}

@media(max-width:620px){

  .customer-dashboard{
    padding-top:34px;
  }

  .customer-hero{
    margin-bottom:31px;
  }

  .customer-hero h1{
    font-size:42px;
  }

  .customer-level-inline{
    margin-top:15px;
  }

  .customer-level-coin-wrap{
    width:42px;
    height:42px;
    flex-basis:42px;
  }

  .customer-level-coin{
    width:40px;
    height:40px;
  }

  .customer-level-text{
    font-size:16px;
  }
}

@media(max-width:380px){

  .customer-hero h1{
    font-size:38px;
  }

  .customer-level-text{
    font-size:15px;
  }
}


/* =========================================================
   EMONY V3.3.4 — HEADER CLIENTE COMPACTO
   ========================================================= */

.compact-user-header{
  background:#fff;
}

.compact-user-header-inner{
  min-height:92px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.header-greeting{
  min-width:0;
  display:flex;
  align-items:center;
  gap:9px;
}

.header-boomerang{
  width:23px;
  height:23px;
  flex:0 0 23px;
  object-fit:contain;
  display:block;
}

.header-hello{
  min-width:0;
  color:#5f6878;
  font-size:18px;
  line-height:1.1;
  white-space:nowrap;
}

.header-hello strong{
  color:#202633;
  font-weight:760;
}

.compact-user-header .logout-link{
  flex:0 0 auto;
  font-size:17px;
  font-weight:750;
}

/* El saludo grande anterior deja de utilizarse */
.customer-dashboard{
  padding-top:30px;
}

.customer-dashboard .customer-hero{
  display:none !important;
}

@media(max-width:620px){

  .compact-user-header-inner{
    min-height:82px;
  }

  .header-greeting{
    gap:7px;
  }

  .header-boomerang{
    width:20px;
    height:20px;
    flex-basis:20px;
  }

  .header-hello{
    font-size:16px;
  }

  .compact-user-header .logout-link{
    font-size:16px;
  }

  .customer-dashboard{
    padding-top:27px;
  }
}

@media(max-width:370px){

  .header-hello{
    font-size:15px;
  }

  .header-boomerang{
    width:19px;
    height:19px;
    flex-basis:19px;
  }
}


/* =========================================================
   EMONY V3.4 — HOME CLIENTE / BANNERS
   ========================================================= */

.customer-home{
  padding-top:22px;
}

.emony-banner-carousel{
  width:100%;
  margin:0 0 20px;
}

.emony-banner-track{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  border-radius:25px;
}

.emony-banner-track::-webkit-scrollbar{
  display:none;
}

.emony-banner-slide{
  position:relative;
  isolation:isolate;
  flex:0 0 100%;
  min-height:180px;
  overflow:hidden;
  scroll-snap-align:start;
  border-radius:25px;
  padding:24px;

  display:flex;
  align-items:flex-end;

  color:var(--banner-color,#fff);
  background:
    linear-gradient(
      100deg,
      rgba(7,28,94,.78) 0%,
      rgba(12,48,158,.61) 52%,
      rgba(10,36,121,.18) 100%
    ),
    var(--banner-image,none),
    var(--banner-bg,#123fc3);

  background-size:cover;
  background-position:center;
  box-shadow:0 14px 38px rgba(17,47,146,.16);
}

.emony-banner-slide.emony-banner-media-only{
  padding:0;
  background:var(--banner-image,none),var(--banner-bg,#123fc3);
  background-size:cover;
  background-position:center;
}
.emony-banner-slide.emony-banner-media-only::after{display:none}
.emony-banner-slide.emony-banner-media-only .emony-banner-content{display:none}

.emony-banner-slide::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(
      circle at 86% 20%,
      rgba(255,216,45,.23),
      transparent 31%
    );
}

.emony-banner-video{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  object-fit:cover;
  background:var(--banner-bg,#123fc3);
}

.emony-banner-sound{
  position:absolute;
  z-index:5;
  right:14px;
  bottom:14px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.28);
  border-radius:50%;
  background:rgba(10,22,58,.58);
  color:#fff;
  font-size:17px;
  box-shadow:0 5px 16px rgba(0,0,0,.18);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.emony-banner-sound span{display:grid;place-items:center}.emony-banner-sound span[hidden]{display:none}.emony-banner-sound svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.emony-banner-sound:active{transform:scale(.96)}

.emony-banner-has-video::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(100deg,rgba(7,28,94,.76) 0%,rgba(12,48,158,.53) 52%,rgba(10,36,121,.10) 100%);
}
.emony-banner-has-video .emony-banner-content{z-index:2}
.emony-banner-has-video .emony-banner-brand-mark,.emony-banner-has-video .emony-banner-accent-mark{z-index:3}

.emony-banner-content{
  position:relative;
  z-index:2;
  max-width:78%;
}

.emony-banner-content h2{
  margin:0;
  max-width:330px;
  color:inherit;
  font-size:27px;
  line-height:1.03;
  letter-spacing:-.035em;
  font-weight:820;
}

.emony-banner-content p{
  margin:9px 0 0;
  max-width:300px;
  color:inherit;
  opacity:.88;
  font-size:13px;
  line-height:1.45;
}

.emony-banner-button{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:37px;
  margin-top:16px;
  padding:0 15px;
  border-radius:999px;
  background:#f6d52f;
  color:#123baf;
  text-decoration:none;
  font-size:12px;
  font-weight:820;
  box-shadow:0 7px 18px rgba(0,0,0,.10);
}

.emony-banner-button span{
  font-size:20px;
  line-height:1;
}

.emony-banner-brand-mark{
  position:absolute;
  z-index:1;
  right:18px;
  top:7px;
  color:#f6d52f;
  opacity:.94;
  font-size:92px;
  line-height:1;
  font-weight:900;
  transform:rotate(-3deg);
  text-shadow:0 7px 18px rgba(0,0,0,.07);
}

.emony-banner-accent-mark{
  position:absolute;
  z-index:3;
  right:25px;
  top:26px;
  min-width:58px;
  height:58px;
  padding:0 8px;
  display:grid;
  place-items:center;
  border-radius:19px;
  background:#f6d52f;
  color:#173b9e;
  font-size:36px;
  line-height:1;
  font-weight:900;
  transform:rotate(5deg);
  box-shadow:0 12px 28px rgba(9,28,89,.18);
}


.emony-banner-dots{
  display:flex;
  justify-content:center;
  gap:6px;
  margin-top:9px;
}

.emony-banner-dots button{
  width:6px;
  height:6px;
  padding:0;
  border:0;
  border-radius:999px;
  background:#d8dde8;
  transition:
    width .2s ease,
    background .2s ease;
}

.emony-banner-dots button.is-active{
  width:18px;
  background:#2348c7;
}


/* Accesos rápidos */

.client-quick-actions{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:0 0 20px;
}

.client-action-card{
  min-width:0;
  min-height:82px;
  padding:12px 7px;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;

  border:1px solid #e5e9f1;
  border-radius:19px;
  background:#fff;
  color:#303744;
  text-decoration:none;

  box-shadow:0 8px 25px rgba(24,44,94,.035);
}

.client-action-icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#f2f5ff;
  color:#2449c8;
  font-size:18px;
  font-weight:820;
}

.client-action-card > span:last-child{
  overflow:hidden;
  max-width:100%;
  white-space:nowrap;
  text-overflow:ellipsis;
  color:#566071;
  font-size:11px;
  font-weight:720;
}

.home-account-card{
  margin-top:0;
}


/* =========================================================
   ADMIN BANNERS
   ========================================================= */

.admin-banner-page{
  max-width:760px;
}

.admin-banner-form{
  margin-bottom:22px;
}

.admin-banner-form textarea{
  min-height:92px;
  resize:vertical;
}

.admin-banner-grid-2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.admin-banner-checkbox{
  display:flex;
  align-items:center;
  gap:10px;
  margin:13px 0;
  color:#4d5666;
  font-size:13px;
  font-weight:700;
}

.admin-banner-list{
  display:grid;
  gap:13px;
}

.admin-banner-item{
  overflow:hidden;
  border:1px solid #e4e8ef;
  border-radius:21px;
  background:#fff;
}

.admin-banner-preview{
  min-height:112px;
  padding:16px;
  display:flex;
  align-items:flex-end;
  color:#fff;
  background:
    linear-gradient(
      100deg,
      rgba(7,28,94,.78),
      rgba(12,48,158,.40)
    ),
    var(--admin-banner-image,none),
    var(--admin-banner-bg,#123fc3);
  background-size:cover;
  background-position:center;
}

.admin-banner-preview strong{
  display:block;
  max-width:70%;
  font-size:18px;
}

.admin-banner-meta{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:13px 15px;
}

.admin-banner-meta span{
  color:#8a93a3;
  font-size:12px;
}

.admin-banner-actions{
  display:flex;
  gap:7px;
}

.admin-banner-actions a,
.admin-banner-actions button{
  min-height:34px;
  padding:0 11px;
  border:1px solid #e0e5ee;
  border-radius:10px;
  background:#fff;
  color:#2448c7;
  text-decoration:none;
  font-size:11px;
  font-weight:800;
}


/* Mobile */

@media(max-width:620px){

  .customer-home{
    padding-top:18px;
  }

  .emony-banner-slide{
    min-height:168px;
    padding:21px;
    border-radius:23px;
  }

  .emony-banner-content{
    max-width:82%;
  }

  .emony-banner-content h2{
    font-size:24px;
  }

  .emony-banner-content p{
    font-size:12px;
  }

  .emony-banner-brand-mark{
    right:13px;
    top:8px;
    font-size:78px;
  }

  .client-quick-actions{
    gap:8px;
  }

  .client-action-card{
    min-height:76px;
    border-radius:17px;
  }

  .client-action-icon{
    width:31px;
    height:31px;
    border-radius:11px;
    font-size:16px;
  }

  .client-action-card > span:last-child{
    font-size:10px;
  }

  .admin-banner-grid-2{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   EMONY V3.5 — HOME CLIENTE COMPLETO
   ========================================================= */

.customer-home{
  padding-bottom:118px;
}

.home-topbar .compact-user-header-inner{
  min-height:82px;
}

.notification-button{
  position:relative;
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  border:1px solid #e5e9f1;
  border-radius:14px;
  background:#fff;
  text-decoration:none;
  box-shadow:0 6px 18px rgba(24,44,94,.035);
}

.notification-bell{
  position:relative;
  width:18px;
  height:18px;
  display:block;
  color:#2549c8;
  font-size:0;
}

.notification-bell::before{
  content:"";
  position:absolute;
  left:3px;
  top:2px;
  width:10px;
  height:11px;
  border:2px solid currentColor;
  border-bottom:0;
  border-radius:8px 8px 3px 3px;
}

.notification-bell::after{
  content:"";
  position:absolute;
  left:5px;
  bottom:1px;
  width:8px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  box-shadow:3px 3px 0 -2px currentColor;
}

.notification-badge{
  position:absolute;
  top:-5px;
  right:-5px;
  min-width:18px;
  height:18px;
  padding:0 5px;
  display:grid;
  place-items:center;
  border:2px solid #fff;
  border-radius:999px;
  background:#f3cf2f;
  color:#193b9d;
  font-size:9px;
  font-weight:900;
}

.home-section{
  margin-top:7px;
}

.home-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:13px;
}

.home-section-head h2{
  margin:2px 0 0;
  color:#1c2230;
  font-size:20px;
  letter-spacing:-.025em;
}

.home-section-kicker{
  color:#8992a2;
  font-size:10px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.home-section-head > a{
  color:#2449c8;
  text-decoration:none;
  font-size:11px;
  font-weight:800;
}

.recent-transfer-list{
  overflow:hidden;
  border:1px solid #e4e8ef;
  border-radius:21px;
  background:#fff;
}

.recent-transfer-row{
  min-height:72px;
  padding:13px 15px;
  display:flex;
  align-items:center;
  gap:12px;
  border-bottom:1px solid #edf0f4;
  color:inherit;
  text-decoration:none;
}

.recent-transfer-row:last-child{
  border-bottom:0;
}

.recent-transfer-icon{
  width:39px;
  height:39px;
  flex:0 0 39px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:#f1f4ff;
  color:#2449c8;
  font-size:19px;
  font-weight:800;
}

.recent-transfer-main{
  min-width:0;
  flex:1;
}

.recent-transfer-main strong{
  display:block;
  color:#202633;
  font-size:13px;
}

.recent-transfer-main span{
  display:block;
  margin-top:3px;
  color:#949cab;
  font-size:10px;
}

.transfer-status{
  flex:0 0 auto;
  max-width:112px;
  padding:6px 8px;
  border-radius:999px;
  font-size:9px;
  font-weight:800;
  white-space:nowrap;
}

.transfer-status-success{
  background:#edf9f1;
  color:#247646;
}

.transfer-status-danger{
  background:#fff0ef;
  color:#b42b22;
}

.transfer-status-info{
  background:#eef4ff;
  color:#2752c4;
}

.transfer-status-pending{
  background:#fff8dd;
  color:#8a6c16;
}

.empty-home-state{
  min-height:92px;
  padding:18px;
  display:flex;
  align-items:center;
  gap:14px;
  border:1px solid #e5e9f0;
  border-radius:21px;
  background:#fff;
}

.empty-home-icon{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:#f1f4ff;
  color:#2449c8;
  font-size:20px;
}

.empty-home-state strong{
  color:#252b37;
  font-size:13px;
}

.empty-home-state p{
  margin:3px 0 0;
  color:#8f98a8;
  font-size:11px;
}


/* Bottom navigation */

.client-bottom-nav{
  position:fixed;
  z-index:100;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  width:100%;
  max-width:480px;
  min-height:74px;
  padding:
    8px
    20px
    calc(8px + env(safe-area-inset-bottom));

  display:grid;
  grid-template-columns:repeat(3,1fr);
  align-items:center;

  border-top:1px solid rgba(215,220,229,.9);
  background:rgba(255,255,255,.94);
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
}

.client-nav-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  color:#8b93a2;
  text-decoration:none;
  font-size:9px;
  font-weight:750;
}

.client-nav-icon{
  width:29px;
  height:27px;
  display:grid;
  place-items:center;
  color:inherit;
  font-size:18px;
  font-weight:800;
}

.client-nav-item.is-active{
  color:#2348c7;
}

.client-nav-send .client-nav-icon{
  width:40px;
  height:40px;
  margin-top:-19px;
  border-radius:14px;
  background:#2348c7;
  color:#fff;
  box-shadow:0 7px 20px rgba(35,72,199,.21);
}


/* Simple pages */

.simple-page{
  padding-top:25px;
  padding-bottom:116px;
}

.simple-page-header{
  width:100%;
  max-width:480px;
  min-height:78px;
  margin:0 auto;
  padding:
    calc(12px + env(safe-area-inset-top))
    22px
    12px;
  display:grid;
  grid-template-columns:40px 1fr 40px;
  align-items:center;
  border-bottom:1px solid #e5e9ef;
  background:#fff;
}

.simple-page-header > strong{
  text-align:center;
  color:#202633;
  font-size:16px;
}

.simple-back{
  color:#202633;
  text-decoration:none;
  font-size:35px;
  line-height:1;
}

.simple-header-spacer{
  width:40px;
}


/* Notifications */

.notification-list{
  overflow:hidden;
  border:1px solid #e5e9ef;
  border-radius:21px;
  background:#fff;
}

.notification-row{
  padding:16px;
  display:flex;
  align-items:flex-start;
  gap:12px;
  border-bottom:1px solid #edf0f4;
  color:inherit;
  text-decoration:none;
}

.notification-row:last-child{
  border-bottom:0;
}

.notification-type-dot{
  width:9px;
  height:9px;
  flex:0 0 9px;
  margin-top:5px;
  border-radius:50%;
  background:#2449c8;
}

.notification-type-success{
  background:#37a163;
}

.notification-type-warning{
  background:#e6b821;
}

.notification-type-danger{
  background:#d84e46;
}

.notification-copy{
  min-width:0;
  flex:1;
}

.notification-copy strong{
  display:block;
  color:#212735;
  font-size:13px;
}

.notification-copy p{
  margin:5px 0 0;
  color:#727c8e;
  font-size:11px;
  line-height:1.45;
}

.notification-copy span{
  display:block;
  margin-top:7px;
  color:#a1a8b5;
  font-size:9px;
}

.empty-page-state{
  min-height:400px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.empty-page-state > span{
  width:54px;
  height:54px;
  margin-bottom:15px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:#f2f5ff;
  color:#2449c8;
  font-size:26px;
}

.empty-page-state strong{
  color:#252b37;
  font-size:15px;
}

.empty-page-state p{
  max-width:250px;
  margin:6px 0 0;
  color:#8e97a7;
  font-size:11px;
  line-height:1.5;
}


/* Profile */

.profile-page{
  padding-top:25px;
}

.profile-identity-card{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:25px;
}

.profile-avatar{
  width:58px;
  height:58px;
  flex:0 0 58px;
  display:grid;
  place-items:center;
  border-radius:19px;
  background:#eef3ff;
  color:#2449c8;
  font-size:24px;
  font-weight:850;
}

.profile-identity-card h1{
  margin:0;
  color:#1c2230;
  font-size:22px;
  letter-spacing:-.03em;
}

.profile-identity-card p{
  margin:4px 0 0;
  color:#8e97a6;
  font-size:12px;
}

.profile-group{
  margin-bottom:23px;
}

.profile-group h2{
  margin:0 0 9px;
  color:#8a93a3;
  font-size:10px;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.profile-menu-card{
  overflow:hidden;
  border:1px solid #e5e9ef;
  border-radius:20px;
  background:#fff;
}

.profile-menu-row{
  min-height:56px;
  padding:0 15px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  border-bottom:1px solid #edf0f4;
}

.profile-menu-row:last-child{
  border-bottom:0;
}

.profile-menu-row span{
  color:#727c8d;
  font-size:12px;
}

.profile-menu-row strong{
  color:#242a37;
  font-size:11px;
}

.profile-menu-link{
  color:inherit;
  text-decoration:none;
}

.profile-menu-link strong{
  color:#2449c8;
  font-size:20px;
  font-weight:500;
}

.profile-logout-button{
  min-height:52px;
  margin-top:10px;
  display:grid;
  place-items:center;
  border:1px solid #f0d7d5;
  border-radius:17px;
  background:#fff;
  color:#bb3c34;
  text-decoration:none;
  font-size:12px;
  font-weight:800;
}


/* Placeholder module */

.module-coming{
  min-height:430px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.module-coming > span{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:17px;
  background:#eef3ff;
  color:#2449c8;
  font-size:25px;
}

.module-coming h1{
  margin:15px 0 0;
  color:#1f2532;
  font-size:22px;
}

.module-coming p{
  max-width:280px;
  margin:7px 0 0;
  color:#8b94a4;
  font-size:11px;
  line-height:1.55;
}

@media(max-width:620px){
  .client-bottom-nav{
    max-width:none;
  }

  .home-topbar .compact-user-header-inner{
    min-height:78px;
  }

  .notification-button{
    width:39px;
    height:39px;
    flex-basis:39px;
    border-radius:13px;
  }
}


/* =========================================================
   EMONY V3.6 — NOTIFICACIONES MODAL + PERFIL COMPLETO
   ========================================================= */

.notification-button{appearance:none;-webkit-appearance:none;cursor:pointer;padding:0}
html.modal-open,body.modal-open{overflow:hidden}
.notification-modal{position:fixed;inset:0;z-index:500;pointer-events:none;visibility:hidden}
.notification-modal.is-open{pointer-events:auto;visibility:visible}
.notification-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(15,23,42,.20);opacity:0;transition:opacity .22s ease}
.notification-modal.is-open .notification-modal-backdrop{opacity:1}
.notification-sheet{position:absolute;left:50%;bottom:0;transform:translate(-50%,105%);width:min(100%,480px);max-height:min(72svh,650px);display:flex;flex-direction:column;padding:10px 18px calc(20px + env(safe-area-inset-bottom));border-radius:28px 28px 0 0;background:#fff;box-shadow:0 -18px 50px rgba(19,31,65,.15);transition:transform .25s cubic-bezier(.2,.8,.2,1)}
.notification-modal.is-open .notification-sheet{transform:translate(-50%,0)}
.notification-sheet-handle{width:38px;height:4px;margin:0 auto 15px;border-radius:999px;background:#dfe3ea}
.notification-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px}
.notification-sheet-head span{display:block;color:#959dac;font-size:9px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.notification-sheet-head h2{margin:2px 0 0;color:#1d2330;font-size:23px;letter-spacing:-.03em}
.notification-sheet-close{width:36px;height:36px;border:0;border-radius:12px;background:#f4f6fa;color:#717a89;font-size:25px;line-height:1;cursor:pointer}
.notification-modal-list{overflow:auto;-webkit-overflow-scrolling:touch;border-top:1px solid #edf0f4}
.notification-modal-row{position:relative;display:flex;align-items:flex-start;gap:11px;padding:15px 36px 15px 2px;border-bottom:1px solid #edf0f4;background:#fff}
.notification-modal-row.is-unread{background:linear-gradient(90deg,#f8faff,#fff)}
.notification-modal-copy{min-width:0;flex:1}.notification-modal-copy strong{display:block;color:#202633;font-size:13px}.notification-modal-copy p{margin:5px 0 0;color:#747e8f;font-size:11px;line-height:1.45}.notification-modal-copy span{display:block;margin-top:6px;color:#a1a8b5;font-size:9px}
.notification-delete{position:absolute;right:1px;top:13px;width:29px;height:29px;border:0;border-radius:10px;background:#f7f8fa;color:#9aa2af;font-size:18px;cursor:pointer}
.notification-clear-button{min-height:44px;margin-top:13px;border:1px solid #e9d7d5;border-radius:14px;background:#fff;color:#b24a42;font-size:11px;font-weight:800;cursor:pointer}
.notification-modal-empty{min-height:210px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.notification-modal-empty>span{width:45px;height:45px;display:grid;place-items:center;margin-bottom:10px;border-radius:15px;background:#eef8f2;color:#2b8b50;font-size:20px}.notification-modal-empty strong{color:#252b37;font-size:14px}.notification-modal-empty p{margin:4px 0 0;color:#959dac;font-size:11px}

.home-section-head>div>h2,.home-section-head h2{margin-top:0}

.referral-profile-card{padding:18px;border:1px solid #e5e9ef;border-radius:20px;background:linear-gradient(145deg,#fffdf2,#fff)}
.referral-profile-copy{display:flex;gap:12px;align-items:flex-start}.referral-profile-icon{width:39px;height:39px;flex:0 0 39px;display:grid;place-items:center;border-radius:13px;background:#f8dd55;color:#5c4d14;font-size:22px;font-weight:900}.referral-profile-copy strong{display:block;color:#242a37;font-size:13px}.referral-profile-copy p{margin:4px 0 0;color:#7c8493;font-size:10.5px;line-height:1.5}
.referral-link-box{margin-top:14px;min-height:43px;padding:0 7px 0 13px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e6eaf1;border-radius:13px;background:#fff}.referral-link-box span{min-width:0;overflow:hidden;text-overflow:ellipsis;color:#4d5666;font-size:11px;font-weight:750}.referral-link-box button{min-height:31px;padding:0 10px;border:0;border-radius:9px;background:#f1f4ff;color:#2449c8;font-size:9px;font-weight:850}
.referral-share-button{width:100%;min-height:44px;margin-top:10px;border:0;border-radius:14px;background:#2449c8;color:#fff;font-size:11px;font-weight:850}

.account-form-page{max-width:480px}.account-form-intro{margin-bottom:20px}.account-form-intro h1{margin:0;color:#1d2330;font-size:25px;letter-spacing:-.035em}.account-form-intro p{margin:6px 0 0;color:#858e9e;font-size:11px;line-height:1.5}.account-form-card{padding:18px;border:1px solid #e5e9ef;border-radius:20px;background:#fff}.account-form-card .button{width:100%;margin-top:6px}

.legal-page{max-width:480px;color:#626c7d}.legal-version{margin:0 0 9px;color:#99a1ae;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.legal-page h1{margin:0 0 15px;color:#1d2330;font-size:27px;letter-spacing:-.035em}.legal-page h2{margin:22px 0 7px;color:#303744;font-size:14px}.legal-page p{font-size:11.5px;line-height:1.7}.legal-note{margin-top:26px;padding:14px;border-radius:14px;background:#f7f9fc;color:#8b94a3!important;font-size:10px!important}

@media(max-width:620px){.notification-sheet{max-height:68svh;padding-left:17px;padding-right:17px}.notification-sheet-head h2{font-size:21px}}
\n\n/* EMONY V3.6.1 — Perfil más sutil */\n.profile-referral-row{width:100%;border:0;background:#fff;text-align:left;font:inherit;cursor:pointer}\n.profile-referral-row>span:first-child{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}\n.profile-referral-row .profile-row-title{color:#303746;font-size:12px;font-weight:750}\n.profile-referral-row small{color:#929aaa;font-size:10px;font-weight:500}\n.profile-referral-row .profile-chevron{color:#2449c8;font-size:20px;font-weight:500}\n

/* =========================================================
   EMONY V3.6.2 — REFERIDOS PREMIUM / PERFIL
   ========================================================= */

.profile-referral-feature{
  margin:0 0 26px;
}

.profile-referral-feature-button{
  width:100%;
  min-height:94px;
  padding:15px 16px;
  display:flex;
  align-items:center;
  gap:13px;

  border:1px solid #eee6bd;
  border-radius:21px;
  background:
    radial-gradient(circle at 88% 15%, rgba(246,213,47,.20), transparent 30%),
    linear-gradient(145deg,#fffef7 0%,#ffffff 72%);

  text-align:left;
  font:inherit;
  cursor:pointer;
  box-shadow:0 9px 28px rgba(95,78,14,.035);
}

.profile-referral-feature-icon{
  width:43px;
  height:43px;
  flex:0 0 43px;
  display:grid;
  place-items:center;

  border-radius:14px;
  background:#f6d52f;
  color:#554814;

  font-size:26px;
  line-height:1;
  font-weight:850;

  box-shadow:0 8px 18px rgba(246,213,47,.22);
}

.profile-referral-feature-copy{
  min-width:0;
  flex:1;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.profile-referral-feature-copy strong{
  color:#242a37;
  font-size:14px;
  font-weight:820;
  letter-spacing:-.01em;
}

.profile-referral-feature-copy > span{
  margin-top:3px;
  color:#737d8e;
  font-size:10.5px;
  line-height:1.42;
}

.profile-referral-feature-copy small{
  margin-top:5px;
  color:#2449c8;
  font-size:9.5px;
  font-weight:750;
}

.profile-referral-feature-arrow{
  flex:0 0 auto;
  color:#2449c8;
  font-size:24px;
  font-weight:500;
}


/* =========================================================
   REFERIDOS — VARIANTE VISUAL DEL BANNER
   Se activa por la clase añadida desde el título.
   ========================================================= */

.emony-banner-slide.referral-campaign-banner{
  /* Mantiene la identidad visual de referidos, pero ya no pisa la imagen
     configurada desde Administración. Si no hay imagen, conserva el
     degradado azul como fondo. */
  background:
    linear-gradient(100deg,rgba(13,43,139,.72) 0%,rgba(24,70,208,.48) 56%,rgba(41,79,192,.18) 100%),
    var(--banner-image,none),
    radial-gradient(circle at 85% 17%,rgba(246,213,47,.28),transparent 27%),
    radial-gradient(circle at 73% 90%,rgba(255,255,255,.08),transparent 32%),
    linear-gradient(118deg,#102d8f 0%,#1646d0 56%,#294fc0 100%);
  background-size:cover;
  background-position:center;
}



.emony-banner-slide.referral-campaign-banner .emony-banner-brand-mark{
  right:9px;
  top:auto;
  bottom:-18px;
  opacity:.10;
  font-size:150px;
  color:#fff;
}

.emony-banner-slide.referral-campaign-banner .emony-banner-button{
  background:#f6d52f;
  color:#163caa;
}

@media(max-width:620px){
  .profile-referral-feature-button{
    min-height:89px;
    padding:14px;
    border-radius:20px;
  }

  .profile-referral-feature-icon{
    width:41px;
    height:41px;
    flex-basis:41px;
  }

  
}


/* =========================================================
   EMONY V3.6.3 — NIVEL EN CABECERA DE PERFIL
   ========================================================= */

.profile-identity-copy{
  min-width:0;
  flex:1;
}

.profile-level-inline{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:6px;
  color:#7d8797;
  font-size:11px;
  line-height:1;
}

.profile-level-inline img{
  width:19px;
  height:19px;
  flex:0 0 19px;
  object-fit:contain;
  filter:drop-shadow(0 3px 6px rgba(96,70,20,.10));
}

.profile-level-inline strong{
  color:#555e6d;
  font-weight:800;
}


/* =========================================================
   CTA DEL BANNER DE REFERIDOS COMO BOTÓN REAL
   ========================================================= */

.e-mony-placeholder-do-not-use { display:none; }


/* Corregimos las dos reglas anteriores inmediatamente
   para evitar herencias raras de algunos minificadores. */
.emony-banner-share-button{
  appearance:none;
  -webkit-appearance:none;
  border:0;
  font-family:inherit;
  cursor:pointer;
}

.emony-banner-share-button.is-copied{
  transform:scale(.98);
}


/* Perfil: al quitar la fila Nivel, la tarjeta queda más limpia */
.profile-menu-card .profile-menu-row{
  transition:background .16s ease;
}

@media(max-width:620px){
  .profile-level-inline{
    margin-top:5px;
    font-size:10.5px;
  }

  .profile-level-inline img{
    width:18px;
    height:18px;
    flex-basis:18px;
  }
}


/* =========================================================
   EMONY V3.6.4 — FIX BOTÓN INVITAR
   ========================================================= */

.emony-banner-share-button{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:7px;

  min-height:37px;
  margin-top:16px;
  padding:0 16px;

  border:0;
  border-radius:999px;

  background:#f6d52f;
  color:#163caa;

  font:inherit;
  font-size:12px;
  font-weight:820;
  line-height:1;

  cursor:pointer;
  box-shadow:0 7px 18px rgba(0,0,0,.10);

  -webkit-appearance:none;
  appearance:none;
}

.emony-banner-share-button span{
  font-size:20px;
  line-height:1;
}

.emony-banner-share-button:active{
  transform:scale(.98);
}

@media(max-width:620px){
  .emony-banner-share-button{
    min-height:39px;
    padding:0 17px;
    font-size:12px;
  }
}


/* EMONY Rates Cloud V1 */
.rates-cloud-page{padding-bottom:116px}
.rates-cloud-head{
  display:flex;justify-content:space-between;align-items:center;gap:20px;
  margin:0 0 22px;padding:4px 2px 0
}
.rates-cloud-kicker{color:#8c95a4;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.rates-cloud-head h1{margin:3px 0 0;color:#1e2431;font-size:27px;letter-spacing:-.035em}
.rates-cloud-head p{margin:4px 0 0;color:#8790a0;font-size:11px}
.rates-money-icon{
  width:46px;height:46px;display:grid;place-items:center;border-radius:16px;
  background:#eef3ff;color:#2449c8;font-size:22px;font-weight:850
}
.rates-filter{margin-bottom:15px}
.rates-filter label{display:block;margin:0 0 7px;color:#8b94a4;font-size:10px;font-weight:800;text-transform:uppercase}
.rates-filter select{
  width:100%;height:50px;padding:0 14px;border:1px solid #e2e7ef;border-radius:16px;
  background:#fff;color:#303744;font-size:13px
}
.rates-client-list{overflow:hidden;border:1px solid #e4e8ef;border-radius:21px;background:#fff}
.rate-client-row{
  min-height:67px;padding:12px 15px;display:flex;justify-content:space-between;align-items:center;gap:15px;
  border-bottom:1px solid #edf0f4
}
.rate-client-row:last-child{border-bottom:0}
.rate-route{display:flex;align-items:center;gap:8px;color:#394252;font-size:12px;font-weight:800}
.rate-route b{color:#2449c8;font-size:16px}
.rate-value{text-align:right}
.rate-value strong{display:block;color:#1f2532;font-size:15px}
.rate-value small{display:block;margin-top:2px;color:#949cab;font-size:9px}


/* =========================================================
   EMONY TASAS VISUAL V2
   Banderas como imágenes locales + encabezado compacto
   ========================================================= */

.rates-v2-page{
  padding-bottom:112px;
}

.rates-v2-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:2px 0 18px;
}

.rates-v2-heading{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}

.rates-v2-heading h1{
  margin:0;
  color:#161b27;
  font-size:25px;
  line-height:1;
  font-weight:850;
  letter-spacing:-.04em;
}

.rates-level-mini{
  display:flex;
  align-items:center;
  gap:7px;
  height:34px;
  padding:4px 10px 4px 5px;
  border:1px solid #e6eaf1;
  border-radius:999px;
  background:#fff;
  box-shadow:0 4px 16px rgba(20,32,63,.035);
  flex-shrink:0;
}

.rates-level-mini img{
  width:25px;
  height:25px;
  object-fit:contain;
  display:block;
}

.rates-level-mini span{
  color:#626c7c;
  font-size:11px;
  font-weight:750;
  white-space:nowrap;
}

.rates-v2-filter-label{
  display:block;
  margin:0 0 7px;
  color:#929aaa;
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.045em;
}

.rates-origin-picker{
  position:relative;
  height:57px;
  margin-bottom:16px;
  border:1px solid #e2e7ef;
  border-radius:18px;
  background:#fff;
  overflow:hidden;
}

.rates-origin-picker .rates-picker-visible{
  height:100%;
  padding:0 16px;
  display:flex;
  align-items:center;
  gap:10px;
  pointer-events:none;
}

.rates-origin-picker select{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:0;
  cursor:pointer;
  font-size:16px;
}

.rates-picker-chevron{
  margin-left:auto;
  color:#566173;
  font-size:18px;
  font-weight:800;
}

.currency-photo{
  width:31px;
  height:31px;
  border-radius:50%;
  overflow:hidden;
  flex:0 0 31px;
  background:#f3f5f8;
  border:1px solid rgba(25,38,67,.08);
  box-shadow:0 2px 7px rgba(18,28,50,.08);
}

.currency-photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.currency-photo.usdt-photo img{
  object-fit:contain;
  background:#fff;
}

.rates-picker-copy{
  display:flex;
  flex-direction:column;
  min-width:0;
}

.rates-picker-copy strong{
  color:#273043;
  font-size:13px;
  font-weight:800;
}

.rates-picker-copy small{
  margin-top:2px;
  color:#969ead;
  font-size:10px;
}

.rates-v2-list{
  overflow:hidden;
  border:1px solid #e4e8ef;
  border-radius:20px;
  background:#fff;
}

.rates-v2-row{
  min-height:76px;
  padding:13px 15px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border-bottom:1px solid #edf0f4;
}

.rates-v2-row:last-child{
  border-bottom:0;
}

.rates-v2-route{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}

.rates-v2-currency{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
}

.rates-v2-code{
  color:#273149;
  font-size:12px;
  font-weight:850;
  white-space:nowrap;
}

.rates-v2-arrow{
  color:#2449c8;
  font-size:15px;
  font-weight:850;
  flex-shrink:0;
}

.rates-v2-value{
  text-align:right;
  flex-shrink:0;
}

.rates-v2-value strong{
  display:block;
  color:#161b27;
  font-size:15px;
  font-weight:850;
  letter-spacing:-.015em;
}

.rates-v2-value small{
  display:block;
  margin-top:3px;
  color:#969ead;
  font-size:9px;
}

@media(max-width:380px){
  .currency-photo{
    width:28px;
    height:28px;
    flex-basis:28px;
  }

  .rates-v2-row{
    padding-left:12px;
    padding-right:12px;
  }

  .rates-v2-route{
    gap:6px;
  }

  .rates-v2-currency{
    gap:5px;
  }

  .rates-v2-code{
    font-size:11px;
  }
}


/* =========================================================
   EMONY TASAS V2.1 — HEADER COMPACTO
   Flecha + Tasas + Nivel dentro del encabezado
   ========================================================= */

.rates-header-compact{
  grid-template-columns:42px 1fr 42px;
  padding-left:18px;
  padding-right:18px;
}

.rates-header-center{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-width:0;
}

.rates-header-center > strong{
  font-size:16px;
  font-weight:850;
  color:#1c2230;
  white-space:nowrap;
}

.rates-header-level{
  display:inline-flex;
  align-items:center;
  gap:6px;
  height:29px;
  padding:3px 9px 3px 4px;
  border:1px solid #e5e9f0;
  border-radius:999px;
  background:#fff;
  box-shadow:0 3px 12px rgba(20,32,63,.035);
  white-space:nowrap;
}

.rates-header-level img{
  width:22px;
  height:22px;
  display:block;
  object-fit:contain;
}

.rates-header-level span{
  color:#667081;
  font-size:10px;
  font-weight:800;
  line-height:1;
}

/* Al quitar el bloque duplicado, acercamos el contenido al header */
.rates-v2-page{
  padding-top:18px;
}

@media(max-width:380px){
  .rates-header-center{
    gap:7px;
  }

  .rates-header-center > strong{
    font-size:15px;
  }

  .rates-header-level{
    height:27px;
    padding-right:7px;
  }

  .rates-header-level img{
    width:20px;
    height:20px;
  }

  .rates-header-level span{
    font-size:9px;
  }
}


/* =========================================================
   EMONY ENVIAR V1 — COTIZADOR
   ========================================================= */

.send-v1-page{padding-bottom:116px}

.send-quote-card{
  border:1px solid #e4e8ef;
  border-radius:24px;
  padding:17px;
  background:#fff;
}

.send-country-grid{
  display:grid;
  grid-template-columns:1fr 24px 1fr;
  align-items:end;
  gap:8px;
  margin-bottom:18px;
}

.send-country-select{
  appearance:none;
  border:0;
  background:transparent;
  padding:0;
  text-align:left;
  min-width:0;
}

.send-country-select > small{
  display:block;
  margin-bottom:7px;
  color:#929aaa;
  font-size:9px;
  font-weight:850;
  text-transform:uppercase;
}

.send-country-value{
  min-height:50px;
  padding:8px 9px;
  display:flex;
  align-items:center;
  gap:8px;
  border:1px solid #e3e7ee;
  border-radius:16px;
}

.send-country-value > span:last-child{
  min-width:0;
  display:flex;
  flex-direction:column;
}

.send-country-value strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#252d3c;
  font-size:11px;
}

.send-country-value em{
  margin-top:2px;
  color:#919aaa;
  font-size:9px;
  font-style:normal;
  font-weight:700;
}

.send-country-select > b{
  display:none;
}

.send-route-arrow{
  align-self:center;
  margin-top:18px;
  color:#2449c8;
  font-size:17px;
  font-weight:900;
  text-align:center;
}

.send-money-box{
  padding:15px 15px 13px;
  border:1px solid #e1e6ee;
  border-radius:19px;
}

.send-money-box label{
  display:block;
  margin-bottom:5px;
  color:#8b94a3;
  font-size:10px;
  font-weight:750;
}

.send-money-input{
  display:flex;
  align-items:center;
  gap:10px;
}

.send-money-input input{
  width:100%;
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  color:#171d29;
  font-size:29px;
  font-weight:850;
  letter-spacing:-.04em;
}

.send-money-input input::placeholder{color:#c1c7d1}

.send-money-input span{
  color:#35405a;
  font-size:13px;
  font-weight:850;
}

.send-swap-button{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  margin:-4px auto;
  position:relative;
  z-index:2;
  border:1px solid #dfe5ee;
  border-radius:50%;
  background:#fff;
  color:#2449c8;
  font-size:17px;
  font-weight:900;
  box-shadow:0 4px 14px rgba(26,42,85,.08);
}

.send-rate-summary{
  margin-top:14px;
  padding:0 2px;
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:10px;
}

.send-rate-summary small{
  display:block;
  color:#969eac;
  font-size:9px;
}

.send-rate-summary strong{
  display:block;
  margin-top:3px;
  color:#4c566a;
  font-size:10px;
  font-weight:800;
}

.send-rate-summary > span{
  color:#a1a8b5;
  font-size:8px;
}

.send-quote-warning{
  margin-top:12px;
  padding:11px 12px;
  border-radius:13px;
  background:#fff7e8;
  color:#8d5b00;
  font-size:10px;
}

.send-continue{
  width:100%;
  min-height:56px;
  margin-top:17px;
  border:0;
  border-radius:18px;
  background:#2449c8;
  color:#fff;
  font-size:14px;
  font-weight:850;
  box-shadow:0 12px 26px rgba(36,73,200,.18);
}

.send-continue:disabled{
  opacity:.38;
  box-shadow:none;
}

.send-sheet-backdrop{
  position:fixed;
  inset:0;
  z-index:999;
  background:rgba(17,24,39,.25);
  display:flex;
  align-items:flex-end;
}

.send-sheet-backdrop[hidden]{display:none}

.send-picker-sheet{
  width:100%;
  max-height:72svh;
  padding:8px 16px calc(18px + env(safe-area-inset-bottom));
  overflow:auto;
  border-radius:24px 24px 0 0;
  background:#fff;
  box-shadow:0 -10px 40px rgba(20,29,49,.12);
}

.send-picker-handle{
  width:36px;
  height:4px;
  margin:2px auto 10px;
  border-radius:99px;
  background:#d7dce5;
}

.send-picker-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:4px 3px 11px;
}

.send-picker-head strong{
  color:#1f2634;
  font-size:15px;
}

.send-picker-head button{
  width:32px;
  height:32px;
  border:0;
  border-radius:50%;
  background:#f2f4f8;
  color:#555f70;
  font-size:20px;
}

.send-picker-list{
  overflow:hidden;
  border:1px solid #e6e9ef;
  border-radius:18px;
}

.send-picker-item{
  width:100%;
  min-height:62px;
  padding:10px 13px;
  display:flex;
  align-items:center;
  gap:10px;
  border:0;
  border-bottom:1px solid #edf0f4;
  background:#fff;
  text-align:left;
}

.send-picker-item:last-child{border-bottom:0}

.send-picker-item > span:nth-child(2){
  display:flex;
  flex-direction:column;
  min-width:0;
}

.send-picker-item strong{
  color:#2b3343;
  font-size:12px;
}

.send-picker-item small{
  margin-top:2px;
  color:#9ba2af;
  font-size:9px;
}

.send-picker-item b{
  margin-left:auto;
  color:#a3aab7;
  font-size:18px;
}

.send-sheet-open{overflow:hidden}

.send-next-preview{
  margin-bottom:18px;
  padding:16px;
  border:1px solid #e4e8ef;
  border-radius:20px;
  background:#fff;
}

.send-next-preview small{
  color:#969eac;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
}

.send-next-preview strong{
  display:block;
  margin-top:5px;
  color:#222a38;
  font-size:14px;
}

.send-next-preview p{
  margin:8px 0 0;
  color:#8b94a3;
  font-size:10px;
  line-height:1.5;
}

@media(max-width:380px){
  .send-country-grid{gap:5px}
  .send-country-value{padding-left:7px;padding-right:7px}
  .send-country-value .currency-photo{width:27px;height:27px;flex-basis:27px}
  .send-money-input input{font-size:26px}
}


/* =========================================================
   EMONY ENVIAR V1.2 — DESTINATARIO + REVISION
   ========================================================= */

.send-money-input input{
  font-variant-numeric:tabular-nums;
}

.send-recipient-quote{
  margin-bottom:16px;
  padding:15px 16px;
  border:1px solid #e4e8ef;
  border-radius:19px;
  background:#fff;
}

.send-recipient-quote small{
  display:block;
  color:#969eac;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
}

.send-recipient-quote strong{
  display:block;
  margin-top:5px;
  color:#232b3a;
  font-size:13px;
  line-height:1.4;
}

.send-recipient-quote strong span{
  margin:0 5px;
  color:#2449c8;
}

.send-recipient-quote p{
  margin:3px 0 0;
  color:#959dab;
  font-size:9px;
}

.recipient-form{
  padding-bottom:10px;
}

.recipient-section{
  margin-bottom:14px;
  padding:15px;
  border:1px solid #e4e8ef;
  border-radius:20px;
  background:#fff;
}

.recipient-section h2{
  margin:0 0 14px;
  color:#252d3d;
  font-size:13px;
  font-weight:850;
}

.recipient-field{
  display:block;
  margin-bottom:13px;
}

.recipient-field:last-child{
  margin-bottom:0;
}

.recipient-field > span{
  display:block;
  margin:0 0 6px 2px;
  color:#8d96a5;
  font-size:9px;
  font-weight:800;
}

.recipient-field input,
.recipient-field select{
  width:100%;
  height:51px;
  padding:0 13px;
  border:1px solid #e1e6ee;
  border-radius:15px;
  outline:0;
  background:#fff;
  color:#283142;
  font-size:12px;
}

.recipient-field input:focus,
.recipient-field select:focus{
  border-color:#9db0eb;
  box-shadow:0 0 0 3px rgba(36,73,200,.07);
}

.review-amount-card{
  margin-bottom:15px;
  padding:18px;
  border-radius:21px;
  background:#2449c8;
  color:#fff;
}

.review-amount-card small{
  display:block;
  font-size:9px;
  opacity:.72;
}

.review-amount-card strong{
  display:block;
  margin-top:5px;
  font-size:25px;
  font-weight:850;
  letter-spacing:-.035em;
}

.review-amount-card p{
  margin:5px 0 0;
  font-size:10px;
  opacity:.78;
}

.review-section{
  margin-bottom:14px;
  overflow:hidden;
  border:1px solid #e4e8ef;
  border-radius:20px;
  background:#fff;
}

.review-section-head{
  min-height:50px;
  padding:0 15px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid #edf0f4;
}

.review-section-head strong{
  color:#242c3b;
  font-size:12px;
}

.review-section-head a{
  color:#2449c8;
  font-size:10px;
  font-weight:800;
  text-decoration:none;
}

.review-row{
  min-height:48px;
  padding:9px 15px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border-bottom:1px solid #edf0f4;
}

.review-row:last-child{
  border-bottom:0;
}

.review-row span{
  color:#949cab;
  font-size:9px;
}

.review-row strong{
  max-width:62%;
  color:#313a4a;
  font-size:10px;
  text-align:right;
  word-break:break-word;
}

.send-continue-link{
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  box-sizing:border-box;
}



/* =========================================================
   EMONY ENVIAR V1.3 — WIZARD DESTINATARIO + PAGO
   ========================================================= */

.recipient-wizard-page{
  padding-bottom:116px;
}

.recipient-quote-compact{
  margin-bottom:12px;
}

.recipient-stepbar{
  height:5px;
  display:flex;
  gap:5px;
  margin:0 4px 15px;
}

.recipient-stepbar span{
  flex:1;
  border-radius:99px;
  background:#e7eaf0;
  transition:.2s;
}

.recipient-stepbar span.active,
.recipient-stepbar span.done{
  background:#3151c9;
}

.recipient-wizard-card{
  min-height:315px;
  padding:20px 18px;
  border:1px solid #e3e7ee;
  border-radius:24px;
  background:#fff;
}

.recipient-card-head{
  margin-bottom:18px;
}

.recipient-card-head h2{
  margin:0;
  color:#222a38;
  font-size:19px;
  font-weight:850;
  letter-spacing:-.025em;
}

.recipient-card-head p{
  margin:5px 0 0;
  color:#929aaa;
  font-size:10px;
  line-height:1.45;
}

.recipient-card-body .recipient-field:last-child{
  margin-bottom:0;
}

.recipient-choice-grid{
  display:grid;
  gap:10px;
}

.recipient-choice{
  display:block;
  position:relative;
}

.recipient-choice input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.recipient-choice > span{
  min-height:67px;
  padding:13px 14px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border:1px solid #e1e6ee;
  border-radius:17px;
  background:#fff;
  transition:.18s;
}

.recipient-choice input:checked + span{
  border-color:#3151c9;
  background:#f5f7ff;
  box-shadow:0 0 0 3px rgba(49,81,201,.06);
}

.recipient-choice strong{
  color:#293244;
  font-size:12px;
}

.recipient-choice small{
  margin-top:3px;
  color:#939cab;
  font-size:9px;
}

.recipient-wizard-actions{
  display:flex;
  gap:10px;
  margin-top:14px;
}

.recipient-wizard-actions .send-continue{
  margin-top:0;
}

.recipient-primary{
  flex:1;
}

.recipient-secondary{
  min-width:104px;
  min-height:56px;
  padding:0 18px;
  border:1px solid #e0e5ed;
  border-radius:18px;
  background:#fff;
  color:#5e6879;
  font-size:12px;
  font-weight:800;
}

.admin-payment-page{
  padding-bottom:50px;
}

.admin-payment-intro{
  margin:0 0 14px;
}

.admin-payment-intro h1{
  margin:0;
  font-size:22px;
  color:#222a38;
}

.admin-payment-intro p{
  margin:5px 0 0;
  color:#8f98a8;
  font-size:11px;
}

.admin-payment-ok{
  margin-bottom:14px;
  padding:12px 14px;
  border-radius:14px;
  background:#eefaf3;
  color:#187348;
  font-size:11px;
  font-weight:700;
}

.admin-payment-card{
  margin-bottom:16px;
  padding:17px;
  border:1px solid #e3e7ee;
  border-radius:20px;
  background:#fff;
}

.admin-payment-card h2{
  margin:0;
  color:#232b3b;
  font-size:15px;
}

.admin-payment-card > small{
  display:block;
  margin:3px 0 14px;
  color:#9aa2af;
  font-size:9px;
}

.admin-payment-card label{
  display:block;
  margin-bottom:10px;
  color:#8e97a7;
  font-size:9px;
  font-weight:750;
}

.admin-payment-card input:not([type=checkbox]),
.admin-payment-card textarea{
  width:100%;
  box-sizing:border-box;
  margin-top:5px;
  padding:11px 12px;
  border:1px solid #e1e6ee;
  border-radius:13px;
  background:#fff;
  color:#2d3545;
  font:inherit;
}

.admin-payment-card textarea{
  min-height:78px;
  resize:vertical;
}

.admin-check{
  display:flex!important;
  align-items:center;
  gap:7px;
}

.payment-flow-page{
  padding-bottom:116px;
}

.payment-step{
  padding-top:4px;
}

.payment-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:17px;
}

.payment-head small{
  display:block;
  color:#939cab;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
}

.payment-head h1{
  margin:2px 0 0;
  color:#202837;
  font-size:23px;
  font-weight:850;
  letter-spacing:-.035em;
}

.payment-mini-back{
  width:34px;height:34px;border:1px solid #e2e6ed;border-radius:50%;
  background:#fff;color:#4d5768;font-size:22px;
}

.payment-choice-grid{
  display:grid;
  gap:12px;
}

.payment-choice{
  width:100%;
  min-height:104px;
  padding:17px;
  display:grid;
  grid-template-columns:48px 1fr;
  grid-template-rows:auto auto;
  column-gap:13px;
  border:1px solid #e2e7ef;
  border-radius:21px;
  background:#fff;
  text-align:left;
}

.payment-choice-mark{
  grid-row:1/3;
  width:46px;height:46px;display:grid;place-items:center;
  border-radius:15px;background:#eef3ff;color:#3151c9;
  font-size:20px;font-weight:850;
}

.payment-choice strong{
  align-self:end;color:#283142;font-size:14px;
}

.payment-choice small{
  align-self:start;margin-top:3px;color:#959daa;font-size:9px;
}

.payment-method-list{
  overflow:hidden;
  border:1px solid #e3e7ee;
  border-radius:20px;
  background:#fff;
}

.payment-method-row{
  width:100%;
  min-height:68px;
  padding:11px 15px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border:0;
  border-bottom:1px solid #edf0f4;
  background:#fff;
  text-align:left;
}

.payment-method-row:last-child{border-bottom:0}

.payment-method-row span{
  display:flex;flex-direction:column;
}

.payment-method-row strong{
  color:#293243;font-size:12px;
}

.payment-method-row small{
  margin-top:3px;color:#959daa;font-size:9px;
}

.payment-method-row b{
  color:#9ca4b1;font-size:19px;
}

.payment-instruction-card{
  padding:18px;
  border:1px solid #e2e7ef;
  border-radius:21px;
  background:#fff;
}

.payment-instruction-card > p{
  margin:0 0 14px;
  color:#737d8e;
  font-size:11px;
  line-height:1.55;
}

.payment-data-row{
  min-height:46px;
  padding:8px 0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  border-top:1px solid #edf0f4;
}

.payment-data-row span{
  color:#979fac;font-size:9px;
}

.payment-data-row strong{
  max-width:64%;
  color:#2c3545;font-size:11px;text-align:right;word-break:break-word;
}

.payment-data-note{
  padding-top:12px;
  border-top:1px solid #edf0f4;
  color:#7f8897;
  font-size:10px;
  line-height:1.45;
}

.payment-warning{
  margin-top:12px;
  padding:12px 13px;
  border-radius:14px;
  background:#fff8e8;
  color:#8b650d;
  font-size:9px;
  line-height:1.5;
}

.payment-not-configured{
  padding:14px;
  border-radius:13px;
  background:#f7f8fa;
  color:#8d95a3;
  font-size:10px;
}



/* EMONY ENVIAR V1.4 — persistencia del wizard */
.recipient-wizard-card input,
.recipient-wizard-card select{
  transition:border-color .15s, box-shadow .15s;
}




/* =========================================================
   EMONY ENVIAR V1.6 — ORDENES + COMPROBANTES
   ========================================================= */

.proof-order-card{
  margin-bottom:15px;
  padding:17px;
  border:1px solid #e2e7ef;
  border-radius:21px;
  background:#fff;
}
.proof-order-card small{
  display:block;color:#949dab;font-size:9px;font-weight:800;text-transform:uppercase;
}
.proof-order-card strong{
  display:block;margin-top:4px;color:#232b3a;font-size:18px;font-weight:850;
}
.proof-order-card p{
  margin:5px 0 0;color:#8f98a7;font-size:10px;
}

.proof-upload-card{
  padding:18px;
  border:1px solid #e2e7ef;
  border-radius:22px;
  background:#fff;
}
.proof-upload-card h1{
  margin:0;color:#202837;font-size:21px;font-weight:850;
}
.proof-upload-card > p{
  margin:5px 0 16px;color:#9099a8;font-size:10px;
}
.proof-drop{
  min-height:170px;
  padding:20px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1.5px dashed #cfd6e2;
  border-radius:19px;
  background:#fafbfc;
  text-align:center;
}
.proof-drop input{
  position:absolute;opacity:0;pointer-events:none;
}
.proof-drop-icon{
  width:46px;height:46px;display:grid;place-items:center;
  border-radius:15px;background:#eef3ff;color:#3151c9;
  font-size:23px;font-weight:900;
}
.proof-drop strong{
  margin-top:10px;color:#313a4a;font-size:12px;
}
.proof-drop small{
  margin-top:4px;color:#9aa2af;font-size:9px;
}
.proof-error{
  margin-bottom:12px;padding:10px 12px;border-radius:12px;
  background:#fff0ef;color:#a33a32;font-size:10px;
}

.send-success-card{
  min-height:430px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;
}
.send-success-check{
  width:62px;height:62px;display:grid;place-items:center;
  border-radius:20px;background:#eef3ff;color:#3151c9;
  font-size:30px;font-weight:850;
}
.send-success-card h1{
  margin:18px 0 0;color:#202837;font-size:25px;font-weight:850;
}
.send-success-card p{
  max-width:310px;margin:7px 0 0;color:#9099a8;font-size:11px;line-height:1.5;
}
.send-success-id{
  margin-top:20px;padding:13px 20px;border:1px solid #e2e7ef;border-radius:16px;background:#fff;
}
.send-success-id small{
  display:block;color:#969eac;font-size:8px;text-transform:uppercase;
}
.send-success-id strong{
  display:block;margin-top:3px;color:#293243;font-size:14px;
}

.transfer-list{
  overflow:hidden;border:1px solid #e2e7ef;border-radius:20px;background:#fff;
}
.transfer-row-card{
  min-height:78px;padding:13px 15px;display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid #edf0f4;color:inherit;text-decoration:none;
}
.transfer-row-card:last-child{border-bottom:0}
.transfer-row-card > div{display:flex;flex-direction:column;min-width:0}
.transfer-row-card small{color:#9aa2af;font-size:8px}
.transfer-row-card strong{margin-top:3px;color:#293243;font-size:12px}
.transfer-row-card span{margin-top:4px;color:#7f8999;font-size:9px}
.transfer-row-card b{color:#9da5b2;font-size:20px}

.receipt-link,
.receipt-admin-card{
  min-height:58px;padding:12px 15px;display:flex;align-items:center;justify-content:space-between;
  color:#3151c9;text-decoration:none;font-size:11px;font-weight:800;
}
.receipt-admin-card{
  flex-direction:column;align-items:flex-start;
  border-bottom:1px solid #edf0f4;
}
.receipt-admin-card:last-child{border-bottom:0}
.receipt-admin-card small{margin-top:3px;color:#99a1ae;font-size:8px;font-weight:500}


/* =========================================================
   EMONY ENVIAR V1.7 — COMPROBANTE + TRACKING
   ========================================================= */

.proof-drop{
  cursor:pointer;
}

.proof-drop input{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:0;
  pointer-events:auto;
  cursor:pointer;
}

.proof-drop{
  position:relative;
}

.send-continue:disabled{
  opacity:.38;
  cursor:not-allowed;
}

.order-receipt-success{
  padding:16px 8px 18px;
  text-align:center;
}

.order-receipt-check{
  width:58px;height:58px;margin:0 auto;
  display:grid;place-items:center;
  border-radius:20px;
  background:#eef3ff;color:#3151c9;
  font-size:28px;font-weight:900;
}

.order-receipt-success h1{
  margin:15px 0 0;
  color:#202837;
  font-size:25px;
  font-weight:850;
  letter-spacing:-.035em;
}

.order-receipt-success p{
  max-width:330px;
  margin:7px auto 0;
  color:#9099a8;
  font-size:10px;
  line-height:1.5;
}

.order-ticket{
  overflow:hidden;
  border:1px solid #e2e7ef;
  border-radius:22px;
  background:#fff;
}

.order-ticket-id{
  padding:17px 16px;
  border-bottom:1px solid #edf0f4;
}

.order-ticket-id small{
  display:block;color:#959eac;font-size:8px;text-transform:uppercase;font-weight:800;
}

.order-ticket-id strong{
  display:block;margin-top:4px;color:#222b3a;font-size:17px;
}

.order-ticket-row{
  min-height:52px;
  padding:9px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  border-bottom:1px solid #edf0f4;
}

.order-ticket-row:last-child{border-bottom:0}

.order-ticket-row span{
  color:#949dab;
  font-size:9px;
}

.order-ticket-row strong{
  max-width:65%;
  color:#313a4a;
  font-size:10px;
  text-align:right;
}

.tracking-share-card{
  margin-top:15px;
  padding:16px;
  border:1px solid #e2e7ef;
  border-radius:20px;
  background:#fff;
}

.tracking-share-card > div strong{
  color:#273041;
  font-size:12px;
}

.tracking-share-card > div p{
  margin:4px 0 12px;
  color:#919aa9;
  font-size:9px;
  line-height:1.45;
}

.tracking-share-button,
.tracking-copy-button{
  width:100%;
  min-height:46px;
  border-radius:14px;
  font-size:11px;
  font-weight:800;
}

.tracking-share-button{
  border:0;
  background:#3151c9;
  color:#fff;
}

.tracking-copy-button{
  margin-top:8px;
  border:1px solid #e1e6ee;
  background:#fff;
  color:#4f5b6e;
}

.tracking-public-body{
  background:#f7f8fb;
}

.tracking-public-wrap{
  max-width:520px;
  margin:0 auto;
  padding:38px 18px 50px;
}

.tracking-brand{
  text-align:center;
  margin-bottom:25px;
}

.tracking-brand img{
  width:130px;
  height:auto;
}

.tracking-public-card{
  padding:22px;
  border:1px solid #e3e7ee;
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 40px rgba(30,42,70,.05);
}

.tracking-public-card > small{
  color:#929ba9;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
}

.tracking-public-card h1{
  margin:5px 0 0;
  color:#202837;
  font-size:25px;
}

.tracking-public-card > p{
  color:#929aa8;
  font-size:11px;
  line-height:1.5;
}

.tracking-status{
  margin:7px 0 0!important;
  color:#3151c9!important;
  font-weight:800;
}

.tracking-progress{
  height:7px;
  margin:18px 0;
  overflow:hidden;
  border-radius:99px;
  background:#e9edf3;
}

.tracking-progress span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:#3151c9;
}

.tracking-public-row{
  min-height:49px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid #edf0f4;
}

.tracking-public-row span{
  color:#949dab;
  font-size:9px;
}

.tracking-public-row strong{
  color:#313a4a;
  font-size:10px;
  text-align:right;
}

.tracking-timeline{
  margin-top:18px;
  padding-top:5px;
  border-top:1px solid #edf0f4;
}

.tracking-timeline div{
  min-height:35px;
  display:flex;
  align-items:center;
  gap:9px;
  color:#a0a7b3;
  font-size:9px;
}

.tracking-timeline i{
  width:10px;height:10px;
  border:2px solid #d9dee7;
  border-radius:50%;
  background:#fff;
}

.tracking-timeline div.done{
  color:#3a465a;
  font-weight:750;
}

.tracking-timeline div.done i{
  border-color:#3151c9;
  background:#3151c9;
}


/* =========================================================
   EMONY ENVIAR V1.9 — COMPROBANTE DENTRO DE PAGO
   ========================================================= */

.payment-proof-box{
  position:relative;
  min-height:74px;
  margin-top:14px;
  padding:11px 13px;
  display:flex;
  align-items:center;
  gap:11px;
  border:1px dashed #cfd6e2;
  border-radius:17px;
  background:#fafbfc;
  cursor:pointer;
}

.payment-proof-box input{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:0;
  cursor:pointer;
}

.payment-proof-plus{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  flex:0 0 40px;
  border-radius:13px;
  background:#eef3ff;
  color:#3151c9;
  font-size:22px;
  font-weight:900;
}

.payment-proof-copy{
  display:flex;
  flex-direction:column;
  min-width:0;
}

.payment-proof-copy strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#303949;
  font-size:11px;
}

.payment-proof-copy small{
  margin-top:3px;
  color:#969eac;
  font-size:8px;
}

.payment-proof-box > b{
  margin-left:auto;
  color:#9ea6b3;
  font-size:18px;
}

#paymentReceiptForm .send-continue{
  margin-top:12px;
}


/* =========================================================
   EMONY V2.4.2 — BOTÓN CENTRAL ENVIAR CON BOOMERANG
   ========================================================= */

/*
   Conserva el botón azul actual y sustituye visualmente
   la flecha de texto por el boomerang derecho oficial EMONY.
*/
.client-nav-send .client-nav-icon{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;

    /* Oculta la flecha de texto original */
    font-size: 0 !important;
    line-height: 0 !important;
}

/* Boomerang blanco, centrado dentro del botón */
.client-nav-send .client-nav-icon::before{
    content: "";
    display: block;

    width: 19px;
    height: 19px;

    background-image: url("/assets/img/brand/emony-right.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;

    /*
      El asset original es amarillo.
      Este filtro lo vuelve blanco sin modificar el PNG original.
    */
    filter: brightness(0) invert(1);

    pointer-events: none;
}

/* En pantallas pequeñas mantiene proporción y centrado */
@media (max-width: 390px){
    .client-nav-send .client-nav-icon::before{
        width: 18px;
        height: 18px;
    }
}


/* =========================================================
   EMONY V2.5 — CONTACTOS
   ========================================================= */

.client-action-icon svg{
    display:block;
}

.contacts-page{
    padding-bottom:110px;
}

.contacts-intro{
    margin-bottom:16px;
}

.contacts-intro h1{
    margin:0;
    color:#202837;
    font-size:24px;
    font-weight:850;
    letter-spacing:-.035em;
}

.contacts-intro p{
    margin:5px 0 0;
    max-width:390px;
    color:#929baa;
    font-size:10px;
    line-height:1.5;
}

.contacts-list{
    overflow:hidden;
    border:1px solid #e2e7ef;
    border-radius:22px;
    background:#fff;
}

.contact-card{
    min-height:96px;
    padding:14px 15px;
    display:grid;
    grid-template-columns:48px 1fr auto;
    align-items:center;
    gap:12px;
    border-bottom:1px solid #edf0f4;
}

.contact-card:last-child{
    border-bottom:0;
}

.contact-avatar{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:#eef3ff;
    color:#3151c9;
    font-size:17px;
    font-weight:850;
}

.contact-main{
    min-width:0;
    display:flex;
    flex-direction:column;
}

.contact-main strong{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#283142;
    font-size:12.5px;
    font-weight:850;
}

.contact-main span{
    margin-top:3px;
    color:#8f98a7;
    font-size:9px;
}

.contact-main small{
    margin-top:4px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#697386;
    font-size:8.5px;
}

.contact-actions{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:5px;
}

.contact-actions a,
.contact-actions button{
    padding:0;
    border:0;
    background:transparent;
    color:#3151c9;
    font-size:9px;
    font-weight:800;
    text-decoration:none;
}

.contact-actions button{
    color:#b23a31;
}

.contacts-empty{
    min-height:330px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
}

.contacts-empty-icon{
    width:58px;
    height:58px;
    display:grid;
    place-items:center;
    border-radius:18px;
    background:#eef3ff;
    color:#3151c9;
}

.contacts-empty strong{
    margin-top:14px;
    color:#293243;
    font-size:15px;
}

.contacts-empty p{
    max-width:280px;
    margin:5px 0 0;
    color:#949dab;
    font-size:10px;
    line-height:1.5;
}

.contact-edit-page{
    padding-bottom:35px;
}

.contact-edit-card{
    padding:18px;
    border:1px solid #e2e7ef;
    border-radius:22px;
    background:#fff;
}

.contact-edit-head{
    margin-bottom:18px;
}

.contact-edit-head small{
    color:#969fac;
    font-size:8px;
    font-weight:800;
    text-transform:uppercase;
}

.contact-edit-head h1{
    margin:4px 0 0;
    color:#202837;
    font-size:22px;
    font-weight:850;
}

.contact-edit-field{
    display:block;
    margin-bottom:12px;
}

.contact-edit-field span{
    display:block;
    margin:0 0 6px 2px;
    color:#8e97a7;
    font-size:9px;
    font-weight:800;
}

.contact-edit-field input{
    width:100%;
    height:50px;
    box-sizing:border-box;
    padding:0 13px;
    border:1px solid #e1e6ee;
    border-radius:15px;
    outline:0;
    background:#fff;
    color:#283142;
    font-size:12px;
}

.contact-edit-field input:focus{
    border-color:#9db0eb;
    box-shadow:0 0 0 3px rgba(49,81,201,.07);
}

.contact-edit-error{
    margin-bottom:12px;
    padding:11px 13px;
    border-radius:13px;
    background:#fff0ef;
    color:#a83c34;
    font-size:10px;
}

@media (max-width:390px){
    .contact-card{
        grid-template-columns:44px 1fr auto;
        gap:10px;
        padding-left:12px;
        padding-right:12px;
    }

    .contact-avatar{
        width:44px;
        height:44px;
        border-radius:14px;
    }
}


/* =========================================================
   EMONY V2.6 — ENVÍO RÁPIDO DESDE CONTACTOS
   ========================================================= */

.contact-card{
    grid-template-columns:1fr auto;
}

.contact-quick-send{
    min-width:0;
    display:grid;
    grid-template-columns:48px 1fr 18px;
    align-items:center;
    gap:12px;
    color:inherit;
    text-decoration:none;
}

.contact-send-chevron{
    color:#a0a8b5;
    font-size:22px;
    line-height:1;
}

.quick-contact-send-page{
    padding-bottom:34px;
}

.quick-contact-head{
    margin-bottom:14px;
    padding:14px 16px;
    display:flex;
    align-items:center;
    gap:12px;
    border:1px solid #e2e7ef;
    border-radius:20px;
    background:#fff;
}

.quick-contact-avatar{
    width:46px;
    height:46px;
    flex:0 0 46px;
    display:grid;
    place-items:center;
    border-radius:15px;
    background:#eef3ff;
    color:#3151c9;
    font-size:16px;
    font-weight:850;
}

.quick-contact-head > div:last-child{
    min-width:0;
    display:flex;
    flex-direction:column;
}

.quick-contact-head small{
    color:#969fac;
    font-size:8px;
    font-weight:800;
    text-transform:uppercase;
}

.quick-contact-head strong{
    margin-top:2px;
    color:#283142;
    font-size:14px;
    font-weight:850;
}

.quick-contact-head span{
    margin-top:3px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#8d96a5;
    font-size:9px;
}

.quick-route-static{
    cursor:default;
}

.quick-route-static > b{
    display:none;
}

.quick-fixed-route .send-country-select{
    pointer-events:none;
}

@media (max-width:390px){
    .contact-quick-send{
        grid-template-columns:44px 1fr 16px;
        gap:10px;
    }
}


/* =========================================================
   EMONY V2.7 — ADMINISTRADOR DE ÓRDENES
   ========================================================= */

.admin-orders-page,
.admin-order-detail-page{
    padding-bottom:40px;
}

.admin-orders-summary{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:9px;
    margin-bottom:13px;
}

.admin-orders-summary > div{
    padding:13px 12px;
    border:1px solid #e2e7ef;
    border-radius:17px;
    background:#fff;
}

.admin-orders-summary small{
    display:block;
    color:#929baa;
    font-size:8px;
    font-weight:750;
}

.admin-orders-summary strong{
    display:block;
    margin-top:3px;
    color:#232c3b;
    font-size:21px;
    font-weight:850;
}

.admin-order-filters{
    margin-bottom:14px;
    display:flex;
    gap:7px;
    overflow-x:auto;
    scrollbar-width:none;
}

.admin-order-filters::-webkit-scrollbar{
    display:none;
}

.admin-order-filters a{
    min-height:34px;
    padding:0 11px;
    flex:0 0 auto;
    display:flex;
    align-items:center;
    gap:6px;
    border:1px solid #e2e7ef;
    border-radius:999px;
    background:#fff;
    color:#697386;
    text-decoration:none;
    font-size:8.5px;
    font-weight:800;
}

.admin-order-filters a span{
    min-width:19px;
    height:19px;
    padding:0 5px;
    display:grid;
    place-items:center;
    border-radius:999px;
    background:#f1f4fa;
    font-size:7.5px;
}

.admin-order-filters a.is-active{
    border-color:#3151c9;
    background:#3151c9;
    color:#fff;
}

.admin-order-filters a.is-active span{
    background:rgba(255,255,255,.16);
}

.admin-orders-list{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.admin-order-card{
    padding:15px;
    display:block;
    border:1px solid #e2e7ef;
    border-radius:20px;
    background:#fff;
    color:inherit;
    text-decoration:none;
}

.admin-order-card-top{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:10px;
}

.admin-order-card-top > div{
    min-width:0;
}

.admin-order-card-top small{
    display:block;
    color:#9aa2af;
    font-size:7.5px;
}

.admin-order-card-top strong{
    display:block;
    margin-top:3px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#283142;
    font-size:12px;
}

.admin-status-badge{
    min-height:26px;
    padding:0 10px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    border-radius:999px;
    font-size:7.5px;
    font-weight:850;
    white-space:nowrap;
}

.admin-status-pending{
    background:#f1f3f6;
    color:#687283;
}

.admin-status-review{
    background:#fff4d9;
    color:#976817;
}

.admin-status-info{
    background:#edf2ff;
    color:#3151c9;
}

.admin-status-success{
    background:#eaf8ef;
    color:#237044;
}

.admin-status-danger{
    background:#fff0ee;
    color:#ad4037;
}

.admin-order-card-money{
    margin-top:13px;
    display:flex;
    align-items:center;
    gap:7px;
    color:#202837;
}

.admin-order-card-money strong{
    font-size:11px;
    font-weight:850;
}

.admin-order-card-money span{
    color:#3151c9;
    font-size:12px;
}

.admin-order-card-meta{
    margin-top:9px;
    display:flex;
    flex-wrap:wrap;
    gap:5px 10px;
    color:#949dab;
    font-size:7.5px;
}

.admin-orders-empty{
    min-height:260px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
}

.admin-orders-empty strong{
    color:#283142;
    font-size:14px;
}

.admin-orders-empty p{
    max-width:300px;
    margin:5px 0 0;
    color:#969fac;
    font-size:9px;
    line-height:1.5;
}

.admin-order-hero{
    padding:17px;
    border:1px solid #e2e7ef;
    border-radius:22px;
    background:#fff;
}

.admin-order-hero > div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.admin-order-hero > div small{
    color:#969fac;
    font-size:8px;
    font-weight:750;
}

.admin-order-hero > strong{
    margin-top:15px;
    display:flex;
    align-items:center;
    gap:8px;
    color:#202837;
    font-size:18px;
    font-weight:850;
}

.admin-order-hero > strong span{
    color:#3151c9;
}

.admin-order-hero > p{
    margin:7px 0 0;
    color:#949dab;
    font-size:8px;
}

.admin-order-actions{
    margin-top:13px;
    padding:16px;
    border:1px solid #e2e7ef;
    border-radius:21px;
    background:#fff;
}

.admin-order-actions h2,
.admin-order-history h2{
    margin:0;
    color:#273041;
    font-size:13px;
    font-weight:850;
}

.admin-order-action-grid{
    margin-top:11px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
}

.admin-order-action-grid form:last-child:nth-child(odd){
    grid-column:1 / -1;
}

.admin-state-button{
    width:100%;
    min-height:45px;
    padding:0 10px;
    border-radius:14px;
    font-size:9px;
    font-weight:850;
}

.admin-state-primary{
    border:0;
    background:#3151c9;
    color:#fff;
}

.admin-state-success{
    border:0;
    background:#24824e;
    color:#fff;
}

.admin-state-danger{
    border:1px solid #ecc2be;
    background:#fff;
    color:#ad4037;
}

.admin-state-muted{
    border:1px solid #e2e7ef;
    background:#fff;
    color:#707a8b;
}

.admin-order-actions > p{
    margin:9px 0 0;
    color:#969fac;
    font-size:7.5px;
    line-height:1.45;
}

.admin-flash{
    margin-bottom:12px;
    padding:11px 13px;
    border-radius:13px;
    font-size:9px;
    font-weight:750;
}

.admin-flash-success{
    background:#eaf8ef;
    color:#237044;
}

.admin-flash-error{
    background:#fff0ee;
    color:#ad4037;
}

.admin-receipt-preview{
    display:block;
    padding:12px;
    color:#3151c9;
    text-decoration:none;
}

.admin-receipt-preview img{
    width:100%;
    max-height:350px;
    object-fit:contain;
    display:block;
    border-radius:14px;
    background:#f5f7fa;
}

.admin-receipt-preview span{
    margin-top:9px;
    display:block;
    text-align:center;
    font-size:8.5px;
    font-weight:800;
}

.admin-order-history{
    margin-top:13px;
    padding:16px;
    border:1px solid #e2e7ef;
    border-radius:21px;
    background:#fff;
}

.admin-history-row{
    position:relative;
    padding:13px 0 13px 20px;
    display:flex;
    gap:10px;
    border-bottom:1px solid #edf0f4;
}

.admin-history-row:last-child{
    border-bottom:0;
    padding-bottom:0;
}

.admin-history-dot{
    position:absolute;
    left:0;
    top:17px;
    width:9px;
    height:9px;
    border-radius:50%;
}

.admin-history-row > div{
    min-width:0;
}

.admin-history-row strong{
    color:#313a4a;
    font-size:9.5px;
}

.admin-history-row p{
    margin:3px 0 0;
    color:#737d8d;
    font-size:8px;
    line-height:1.4;
}

.admin-history-row small{
    margin-top:4px;
    display:block;
    color:#9ba3af;
    font-size:7px;
}

@media (max-width:390px){
    .admin-orders-summary{
        gap:6px;
    }

    .admin-orders-summary > div{
        padding:11px 9px;
    }

    .admin-orders-summary strong{
        font-size:19px;
    }
}

/* =========================================================
   EMONY · Navegación inferior administrativa deslizable
   ========================================================= */

body.admin-app-body{
  padding-bottom:calc(92px + env(safe-area-inset-bottom,0px));
}

.admin-bottom-nav{
  position:fixed;
  z-index:140;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  width:100%;
  max-width:680px;
  border-top:1px solid rgba(215,220,229,.92);
  background:rgba(255,255,255,.96);
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
  padding:8px 0 calc(8px + env(safe-area-inset-bottom,0px));
  box-shadow:0 -8px 26px rgba(17,30,70,.045);
}

.admin-bottom-nav-track{
  position:relative;
  isolation:isolate;
  display:flex;
  align-items:stretch;
  gap:6px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:0 14px;
  scroll-snap-type:x proximity;
  scroll-padding-inline:14px;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  overscroll-behavior-x:contain;
}

.admin-bottom-nav-track::-webkit-scrollbar{
  display:none;
}

.admin-bottom-nav-item{
  position:relative;
  z-index:2;
  flex:0 0 76px;
  min-width:76px;
  min-height:58px;
  scroll-snap-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  border-radius:16px;
  color:#8c94a4;
  text-decoration:none;
  -webkit-tap-highlight-color:transparent;
  background:transparent;
  transition:color .14s ease,transform .14s ease;
}

.admin-bottom-nav-item:active{
  transform:scale(.96);
}

.admin-bottom-nav-icon{
  width:32px;
  height:29px;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:inherit;
  font-size:20px;
  line-height:1;
  font-weight:850;
}

.admin-bottom-nav-label{
  max-width:72px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:10px;
  line-height:1.1;
  font-weight:800;
  letter-spacing:-.1px;
}

.admin-bottom-nav-item.is-active{
  color:#1748c9;
  background:transparent;
}

.admin-bottom-nav-item.is-active .admin-bottom-nav-icon{
  background:transparent;
  color:#fff;
  box-shadow:none;
}

.admin-bottom-nav-fluid{
  position:absolute;
  z-index:1;
  top:2px;
  left:0;
  width:44px;
  height:40px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:52% 48% 46% 54% / 58% 58% 42% 42%;
  background:linear-gradient(135deg,#1748c9 0%,#315bdd 72%,#f5cf38 145%);
  box-shadow:0 9px 22px rgba(23,72,201,.24);
  transform:translate3d(var(--admin-fluid-x,0px),0,0);
  transform-origin:center center;
  pointer-events:none;
  will-change:transform,opacity;
  contain:layout paint;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  visibility:hidden;
  opacity:0;
}

.admin-bottom-nav-fluid::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-3px;
  width:9px;
  height:9px;
  border-radius:0 0 3px 0;
  background:#315bdd;
  transform:translateX(-50%) rotate(45deg);
  pointer-events:none;
}

.admin-bottom-nav-track.is-fluid-ready .admin-bottom-nav-fluid{
  visibility:visible;
}

.admin-bottom-nav-item.is-target{
  color:#1748c9;
}

.admin-bottom-nav-item.is-target .admin-bottom-nav-icon{
  color:#fff;
}

.admin-bottom-nav-item.is-leaving,
.admin-bottom-nav-item.is-leaving .admin-bottom-nav-icon{
  color:#8c94a4;
}

.admin-bottom-nav-item.is-pressed{
  transform:scale(.96);
}

@media (prefers-reduced-motion:reduce){
  .admin-bottom-nav-fluid,
  .admin-bottom-nav-item{
    transition:none!important;
  }
}

.admin-home-compact{
  display:grid;
  gap:16px;
}

.admin-home-hero{
  padding:22px;
  border:1px solid #e2e7f0;
  border-radius:24px;
  background:linear-gradient(145deg,#f8faff 0%,#fff 70%);
}

.admin-home-hero strong{
  display:block;
  margin-bottom:7px;
  color:#181e2b;
  font-size:21px;
  line-height:1.2;
}

.admin-home-hero p{
  margin:0;
  color:#7e879a;
  font-size:15px;
  line-height:1.55;
}

.admin-home-tip{
  display:flex;
  align-items:center;
  gap:11px;
  padding:14px 16px;
  border-radius:18px;
  background:#f7f9fd;
  color:#6e788c;
  font-size:13px;
  line-height:1.45;
}

.admin-home-tip span{
  flex:0 0 34px;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#1748c9;
  color:#fff;
  font-weight:900;
}

@media (min-width:760px){
  .admin-bottom-nav{
    max-width:820px;
  }
  .admin-bottom-nav-track{
    justify-content:center;
  }
  .admin-bottom-nav-item{
    flex-basis:92px;
    min-width:92px;
  }
}


/* =========================================================
   EMONY · Administrador · Datos bancarios por país
   ========================================================= */

.admin-bank-page{
  padding-bottom:18px;
}

.admin-bank-heading{
  margin:2px 0 18px;
}

.admin-bank-heading h1{
  margin:0 0 7px;
  color:#1f2634;
  font-size:28px;
  line-height:1.08;
  letter-spacing:-.7px;
}

.admin-bank-heading p{
  margin:0;
  color:#8b95a8;
  font-size:14px;
  line-height:1.5;
}

.admin-country-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
}

.admin-country-card{
  min-width:0;
  min-height:132px;
  padding:13px 7px 11px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  text-align:center;
  border:1px solid #e1e6ef;
  border-radius:21px;
  background:#fff;
  color:#202735;
  text-decoration:none;
  -webkit-tap-highlight-color:transparent;
  transition:transform .14s ease,border-color .14s ease,background .14s ease;
}

.admin-country-card:active{
  transform:scale(.97);
  background:#f7f9ff;
  border-color:#ccd8f5;
}

.admin-country-flag-wrap{
  width:58px;
  height:58px;
  margin-bottom:8px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:#f4f7fd;
  overflow:hidden;
}

.admin-country-flag{
  width:46px;
  height:34px;
  object-fit:cover;
  border-radius:8px;
  box-shadow:0 1px 4px rgba(26,34,55,.10);
}

.admin-country-card strong{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
  line-height:1.15;
}

.admin-country-card > span:not(.admin-country-flag-wrap){
  margin-top:3px;
  color:#1748c9;
  font-size:10px;
  font-weight:850;
}

.admin-country-card small{
  margin-top:4px;
  color:#a0a8b7;
  font-size:9px;
  line-height:1.15;
}

.admin-bank-country-title{
  display:flex;
  align-items:center;
  gap:13px;
  margin:2px 0 17px;
}

.admin-bank-country-title img{
  width:56px;
  height:42px;
  object-fit:cover;
  border-radius:10px;
  box-shadow:0 2px 7px rgba(25,36,64,.11);
}

.admin-bank-country-title h1{
  margin:0;
  color:#1f2634;
  font-size:25px;
  line-height:1.1;
  letter-spacing:-.5px;
}

.admin-bank-country-title p{
  margin:4px 0 0;
  color:#929bad;
  font-size:12px;
}

.admin-bank-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

.admin-bank-card-head h2{
  margin:0 0 3px;
}

.admin-bank-state{
  flex:0 0 auto;
  padding:6px 9px;
  border-radius:999px;
  font-size:9px;
  line-height:1;
  font-weight:850;
}

.admin-bank-state.is-on{
  background:#eaf8ef;
  color:#217244;
}

.admin-bank-state.is-off{
  background:#fff0ee;
  color:#b33b31;
}

.admin-bank-section-title{
  margin:26px 0 12px;
}

.admin-bank-section-title h2{
  margin:0 0 4px;
  color:#202735;
  font-size:20px;
}

.admin-bank-section-title p{
  margin:0;
  color:#929bad;
  font-size:12px;
  line-height:1.4;
}

.admin-bank-empty{
  padding:20px;
  border:1px dashed #dce2eb;
  border-radius:18px;
  color:#8c96a8;
  text-align:center;
  background:#fafbfe;
  font-size:13px;
}

.admin-bank-method-card{
  padding-top:17px;
}

.admin-bottom-nav-icon{
  font-size:18px;
}

.admin-bottom-nav-item[href="/admin-payments.php"] .admin-bottom-nav-icon{
  font-size:11px;
  letter-spacing:-.4px;
}

@media (max-width:350px){
  .admin-country-grid{ gap:8px; }
  .admin-country-card{ min-height:124px; padding-left:5px; padding-right:5px; }
  .admin-country-flag-wrap{ width:52px; height:52px; }
  .admin-country-flag{ width:42px; height:31px; }
}

/* EMONY Admin · Datos bancarios V3: navegación progresiva */
.admin-bank-category-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:22px;
}
.admin-bank-category-card,
.admin-bank-option-card{
  min-width:0;
  text-decoration:none;
  color:#1b2232;
  border:1px solid #e1e6ef;
  background:#fff;
  border-radius:22px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  text-align:center;
}
.admin-bank-category-card{
  min-height:164px;
  padding:22px 12px 17px;
}
.admin-bank-category-icon,
.admin-bank-option-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:54px;
  height:54px;
  border-radius:18px;
  background:#edf2ff;
  color:#1746cf;
  font-size:20px;
  font-weight:900;
  line-height:1;
}
.admin-bank-category-card strong{
  margin-top:13px;
  font-size:16px;
  line-height:1.18;
}
.admin-bank-category-card small{
  margin-top:6px;
  color:#8f99ad;
  font-size:12px;
}
.admin-bank-country-title-compact{margin-bottom:4px;}
.admin-bank-heading-tight{margin-bottom:14px;}
.admin-bank-option-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.admin-bank-option-card{
  position:relative;
  min-height:154px;
  padding:14px 7px 12px;
}
.admin-bank-option-card .admin-bank-option-icon{
  width:46px;
  height:46px;
  border-radius:15px;
  font-size:17px;
}
.admin-bank-option-card strong{
  width:100%;
  margin-top:10px;
  font-size:13px;
  line-height:1.15;
  overflow-wrap:anywhere;
}
.admin-bank-option-card small{
  width:100%;
  margin-top:5px;
  color:#8f99ad;
  font-size:10px;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.admin-bank-mini-state{
  margin-top:auto;
  padding:5px 8px;
  border-radius:999px;
  font-size:10px;
  font-weight:800;
}
.admin-bank-mini-state.is-on{background:#eaf8ef;color:#267b4a;}
.admin-bank-mini-state.is-off{background:#fff0ef;color:#bc392f;}
.admin-bank-editor-head{
  display:flex;
  align-items:center;
  gap:13px;
  margin:4px 0 17px;
}
.admin-bank-editor-head h1{
  margin:0;
  font-size:25px;
  line-height:1.08;
  color:#1b2232;
}
.admin-bank-editor-head p{
  margin:5px 0 0;
  color:#98a2b5;
  font-size:13px;
}
.admin-bank-single-editor{margin-top:0;}
@media(max-width:360px){
  .admin-bank-option-grid{gap:7px;}
  .admin-bank-option-card{min-height:146px;padding-left:5px;padding-right:5px;}
  .admin-bank-option-card strong{font-size:12px;}
}

/* =========================================================
   EMONY SUPER ADMIN V11 · OPERACIONES ACTIVAS / HISTORIAL
   ========================================================= */
.admin-ops-body{padding-bottom:calc(104px + env(safe-area-inset-bottom));}
.admin-ops-page{padding-top:26px;max-width:900px;margin:0 auto;}
.admin-ops-topbar{display:flex;flex-direction:column;gap:14px;margin-bottom:18px;}
.admin-ops-topbar>div{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.admin-ops-topbar>div>strong{font-size:30px;line-height:1.05;color:#171b28;letter-spacing:-.025em;}
.admin-ops-topbar>div>span{display:inline-flex;min-width:34px;height:34px;align-items:center;justify-content:center;border-radius:999px;background:#eef3ff;color:#1948c9;font-weight:800;}
.admin-ops-search{height:58px;border:1.5px solid #dfe5ef;border-radius:20px;background:#fff;display:flex;align-items:center;gap:10px;padding:0 17px;box-sizing:border-box;}
.admin-ops-search>span{font-size:24px;color:#8b95aa;line-height:1;}
.admin-ops-search input{min-width:0;flex:1;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;font-size:17px!important;padding:0!important;height:auto!important;color:#202534;}
.admin-ops-search input::placeholder{color:#a8b0bf;}
.admin-ops-list{display:flex;flex-direction:column;gap:12px;}
.admin-live-order{border:1.5px solid #e0e5ee;border-radius:22px;background:#fff;overflow:hidden;}
.admin-live-order[hidden]{display:none!important;}
.admin-live-order details>summary{list-style:none;cursor:pointer;padding:18px 18px 16px;user-select:none;-webkit-tap-highlight-color:transparent;}
.admin-live-order details>summary::-webkit-details-marker{display:none;}
.admin-live-order-main{min-width:0;}
.admin-live-order-idrow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;}
.admin-live-order-id{font-size:12px;letter-spacing:.035em;color:#929cb0;font-weight:700;}
.admin-live-timer{font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;justify-content:center;min-width:70px;height:30px;padding:0 9px;border-radius:999px;background:#eaf7ef;color:#237748;font-size:14px;font-weight:900;letter-spacing:.02em;}
.admin-live-timer.is-warning{background:#fff5d8;color:#9a6800;}
.admin-live-timer.is-overdue{background:#ffeded;color:#b1352c;}
.admin-live-order-people{display:flex;align-items:baseline;gap:7px;min-width:0;margin-bottom:10px;}
.admin-live-order-people strong{font-size:20px;color:#222838;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.admin-live-order-people span{font-size:14px;color:#8993a7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.admin-live-order-money{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#1f2635;margin-bottom:12px;}
.admin-live-order-money strong{font-size:17px;}
.admin-live-order-money span{color:#2450ca;font-weight:900;}
.admin-live-order-foot{display:flex;align-items:center;gap:10px;min-width:0;color:#97a0b1;font-size:12px;}
.admin-live-order-foot .admin-status-badge{flex:0 0 auto;}
.admin-live-chevron{margin-left:auto;font-size:18px;color:#2450ca;transition:transform .18s ease;}
.admin-live-order details[open] .admin-live-chevron{transform:rotate(180deg);}
.admin-live-order-detail{border-top:1px solid #edf0f5;padding:16px 18px 20px;background:#fbfcff;}
.admin-live-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;}
.admin-live-grid>div{min-width:0;padding:12px;border:1px solid #e8ecf3;border-radius:16px;background:#fff;display:flex;flex-direction:column;gap:3px;}
.admin-live-grid small{font-size:11px;color:#929bae;font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.admin-live-grid strong{font-size:14px;color:#242b3a;overflow-wrap:anywhere;}
.admin-live-grid span{font-size:12px;color:#8b95a8;overflow-wrap:anywhere;}
.admin-live-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px;}
.admin-live-section-title strong{font-size:16px;color:#232a39;}
.admin-live-section-title a{font-size:14px;font-weight:800;color:#2450ca;text-decoration:none;}
.admin-live-receipt{margin-bottom:16px;}
.admin-live-receipt-image{display:block;width:100%;max-height:260px;border-radius:16px;overflow:hidden;background:#eef1f6;}
.admin-live-receipt-image img{display:block;width:100%;max-height:260px;object-fit:contain;background:#eef1f6;}
.admin-live-pdf,.admin-live-no-receipt{display:flex;align-items:center;justify-content:center;min-height:62px;border:1px solid #e4e8ef;border-radius:16px;background:#fff;text-decoration:none;color:#2450ca;font-weight:800;text-align:center;padding:10px;}
.admin-live-no-receipt{color:#8f98aa;font-weight:600;}
.admin-live-actions{padding-top:2px;}
.admin-live-action-row{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;}
.admin-live-action-row::-webkit-scrollbar{display:none;}
.admin-live-action-row form{flex:0 0 auto;margin:0;}
.admin-live-action{min-height:42px;border:0;border-radius:13px;padding:0 14px;font-size:13px;font-weight:850;white-space:nowrap;}
.admin-live-action-primary{background:#eaf0ff;color:#214ac2;}
.admin-live-action-success{background:#e8f7ee;color:#237748;}
.admin-live-action-danger{background:#fff0ee;color:#b23b31;}
.admin-live-action-muted{background:#f0f2f6;color:#6f7889;}
.admin-live-complete{margin-top:10px;border:1px solid #dfe6f2;border-radius:16px;background:#fff;overflow:hidden;}
.admin-live-complete>summary{padding:13px 14px!important;color:#2450ca;font-weight:850;font-size:14px;list-style:none;}
.admin-live-complete>summary::-webkit-details-marker{display:none;}
.admin-live-complete form{padding:0 14px 14px;display:flex;flex-direction:column;gap:10px;margin:0;}
.admin-live-complete label{display:flex;flex-direction:column;gap:7px;color:#4e586b;font-size:13px;font-weight:700;}
.admin-live-complete input[type=file]{font-size:13px;max-width:100%;}
.admin-live-complete button{min-height:46px;border:0;border-radius:14px;background:#224dcc;color:#fff;font-weight:850;font-size:14px;}
.admin-ops-empty{padding:34px 20px;text-align:center;border:1px dashed #dce2ec;border-radius:22px;background:#fbfcff;color:#8c96a9;}
.admin-ops-empty>span{display:flex;width:48px;height:48px;border-radius:16px;align-items:center;justify-content:center;background:#eaf7ef;color:#278052;font-size:24px;font-weight:900;margin:0 auto 10px;}
.admin-ops-empty strong{display:block;font-size:18px;color:#303747;margin-bottom:5px;}
.admin-ops-empty p{margin:0;font-size:14px;}
.admin-ops-filter-empty{margin-top:12px;}

.admin-history-page-v11{max-width:900px;margin:0 auto;}
.admin-history-search{margin-bottom:14px;}
.admin-history-tabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 0 16px;}
.admin-history-tabs::-webkit-scrollbar{display:none;}
.admin-history-tabs a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1.5px solid #e0e5ee;border-radius:999px;background:#fff;color:#6f788b;text-decoration:none;font-size:13px;font-weight:800;white-space:nowrap;}
.admin-history-tabs a span{display:inline-flex;min-width:24px;height:24px;align-items:center;justify-content:center;padding:0 5px;border-radius:999px;background:#f0f3f8;font-size:11px;}
.admin-history-tabs a.is-active{background:#3151cc;border-color:#3151cc;color:#fff;}
.admin-history-tabs a.is-active span{background:rgba(255,255,255,.16);color:#fff;}
.admin-history-card[hidden]{display:none!important;}

@media (max-width:560px){
  .admin-ops-page{padding:18px 16px 120px;}
  .admin-ops-topbar>div>strong{font-size:25px;}
  .admin-ops-search{height:54px;border-radius:18px;}
  .admin-live-order details>summary{padding:15px 15px 14px;}
  .admin-live-order-detail{padding:14px 15px 17px;}
  .admin-live-grid{grid-template-columns:1fr 1fr;gap:8px;}
  .admin-live-grid>div{padding:10px;}
  .admin-live-order-people{display:block;}
  .admin-live-order-people strong,.admin-live-order-people span{display:block;}
  .admin-live-order-people strong{font-size:18px;}
  .admin-live-order-people span{margin-top:2px;}
}
@media (max-width:360px){
  .admin-live-grid{grid-template-columns:1fr;}
}

/* EMONY_NATIVE_NAV_VISUAL_FIX_V14_18_2 */
.client-bottom-nav{
  overflow:visible !important;
  contain:none !important;
}
.client-nav-item{
  overflow:visible !important;
}
.client-nav-send{
  position:relative;
  z-index:3;
}
.client-nav-send .client-nav-icon{
  width:46px !important;
  height:46px !important;
  margin-top:-28px !important;
  border-radius:16px !important;
  background:#2348c7 !important;
  color:#fff !important;
  box-shadow:0 10px 24px rgba(35,72,199,.27) !important;
  transform:translateZ(0) !important;
}
@media (hover:none) and (pointer:coarse){
  .client-nav-send:active .client-nav-icon,
  .client-nav-send.emory-native-pressing .client-nav-icon,
  .client-nav-send.emory-native-pressing .client-nav-icon{
    transform:scale(.96) translateZ(0) !important;
  }
}

/* =========================================================
   EMONY NATIVE CORE V14.19.1
   Navegación limpia: NO conserva snapshots de la vista anterior.
   Evita superposición Inicio/Tasas/Enviar entre documentos PHP.
   ========================================================= */
:root{--emony-native-ease:cubic-bezier(.2,.78,.2,1);}
html,body{background:#fff;}
html{-webkit-tap-highlight-color:transparent;}

/* IMPORTANTE: no usar @view-transition navigation:auto en EMONY.
   La app hoy navega entre documentos PHP y Safari/Chrome puede mantener
   visible la vista anterior mientras pinta la nueva. */

@media (hover:none) and (pointer:coarse){
  a:active,[role="button"]:active,.quick-action:active,.home-quick-card:active,
  .rate-row:active,.route-row:active,.rates-v2-row-link:active,.contact-card:active,
  .transfer-card:active,.op-card:active,.emony-native-pressing{transform:none!important;}

  a.emory-native-pressing,[role="button"].emony-native-pressing,
  .quick-action.emory-native-pressing,.home-quick-card.emory-native-pressing,
  .rate-row.emory-native-pressing,.route-row.emory-native-pressing,
  .rates-v2-row-link.emory-native-pressing,.contact-card.emory-native-pressing,
  .transfer-card.emory-native-pressing,.op-card.emory-native-pressing{opacity:.84!important;}

  button.emory-native-pressing,input[type="button"].emony-native-pressing,
  input[type="submit"].emony-native-pressing{transform:scale(.985)!important;opacity:.9!important;}

  .client-nav-item.emory-native-pressing,.admin-bottom-nav-item.emory-native-pressing,
  .op-nav a.emory-native-pressing{opacity:1!important;}
  .client-nav-item.emory-native-pressing .client-nav-icon,
  .admin-bottom-nav-item.emory-native-pressing .admin-bottom-nav-icon,
  .op-nav a.emory-native-pressing svg{transform:scale(.93) translateZ(0)!important;}
  .client-nav-send.emory-native-pressing .client-nav-icon{transform:scale(.95) translateZ(0)!important;}
}

.client-bottom-nav{overflow:visible!important;contain:none!important;left:50%!important;right:auto!important;transform:translateX(-50%) translateZ(0)!important;}
.client-nav-item{overflow:visible!important;}
.client-nav-send{position:relative;z-index:4;}
.client-nav-send .client-nav-icon{width:46px!important;height:46px!important;margin-top:-28px!important;border-radius:16px!important;background:#2348c7!important;color:#fff!important;box-shadow:0 10px 24px rgba(35,72,199,.27)!important;}
