
/* =========================================================
   REBOX V49 · Mi cuenta retail
   Diseño limpio tipo e-commerce: cliente primero.
   El acceso a panel interno solo se muestra tras validar rol.
   ========================================================= */

.account-retail-card{
  width:min(560px,calc(100vw - 28px))!important;
  max-height:min(92dvh,900px);
  padding:0!important;
  overflow:auto!important;
  border-radius:22px!important;
  background:#fff;
}

.account-retail-card.is-dashboard-mode{
  width:min(940px,calc(100vw - 28px))!important;
}

.account-retail-shell{
  display:block!important;
  min-height:0!important;
}

.account-retail-brand{
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  border-bottom:1px solid #eee6ec;
  background:#fff;
  padding:16px 54px 14px;
}

.account-retail-brand img{
  width:176px;
  max-width:58%;
  height:auto;
  display:block;
}

.account-retail-brand span{
  font:600 11px Poppins,Arial,sans-serif;
  color:#806f80;
  padding-left:14px;
  border-left:1px solid #e9dfe6;
  white-space:nowrap;
}

.account-retail-main{
  padding:30px 34px 34px!important;
  background:#fff!important;
}

.account-retail-close{
  position:absolute!important;
  top:18px!important;
  right:18px!important;
  z-index:8;
}

.retail-auth-view{
  display:grid;
  gap:20px;
}

.retail-auth-head{
  text-align:center;
  max-width:430px;
  margin:0 auto;
}

.retail-auth-kicker{
  display:inline-block;
  margin-bottom:7px;
  color:#a3587d;
  font:700 9px Poppins,Arial,sans-serif;
  letter-spacing:.12em;
}

.retail-auth-head h4{
  margin:0;
  color:#3f2148;
  font:700 27px/1.15 Poppins,Arial,sans-serif;
  letter-spacing:-.5px;
}

.retail-auth-head p{
  margin:9px auto 0;
  color:#766b76;
  font-size:12.5px;
  line-height:1.65;
  max-width:390px;
}

.retail-auth-form{
  gap:13px!important;
}

.retail-auth-form label>span{
  font-size:10.5px!important;
}

.retail-auth-form input{
  min-height:48px;
  border-radius:10px!important;
  background:#fff;
}

.retail-primary-action{
  width:100%;
  min-height:48px!important;
  margin-top:3px;
  border-radius:10px!important;
  font-size:11px!important;
  letter-spacing:.035em;
}

.retail-link-button{
  border:0;
  background:transparent;
  color:#6b356b;
  font:600 11px Poppins,Arial,sans-serif;
  text-align:center;
  cursor:pointer;
  padding:5px 8px;
}

.retail-link-button:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}

.retail-divider{
  margin:0!important;
  font-size:10px!important;
}

.retail-divider span{
  padding-inline:8px;
  background:#fff;
}

.google-signin-slot{
  width:100%;
}

.retail-auth-switch{
  display:grid;
  gap:10px;
  text-align:center;
  border-top:1px solid #eee5eb;
  padding-top:19px;
}

.retail-auth-switch.compact{
  border-top:0;
  padding-top:3px;
  gap:5px;
}

.retail-auth-switch>span{
  color:#6f6470;
  font-size:11px;
}

.retail-create-button{
  width:100%;
  min-height:46px;
  border:1px solid #5b2d62;
  border-radius:10px;
  background:#fff;
  color:#4b2354;
  font:700 11px Poppins,Arial,sans-serif;
  letter-spacing:.035em;
  cursor:pointer;
}

.retail-create-button:hover{
  background:#fbf6fa;
}

.retail-terms{
  font-size:10.5px!important;
  background:#fcfafb;
}

.retail-security-note{
  margin-top:2px;
}

/* Dashboard cliente */
.retail-dashboard{
  gap:22px!important;
}

.retail-dashboard-head{
  padding:0 0 20px!important;
  border:0!important;
  border-bottom:1px solid #ece3e9!important;
  border-radius:0!important;
  background:#fff!important;
}

.retail-customer-label{
  display:block;
  color:#a2577b;
  font:700 9px Poppins,Arial,sans-serif;
  letter-spacing:.11em;
  margin-bottom:5px;
}

.retail-dashboard-head h4{
  font-size:25px!important;
}

.account-avatar{
  overflow:hidden;
}

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

.retail-customer-shortcuts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
}

.retail-shortcut{
  min-width:0;
  min-height:118px;
  border:1px solid #eadfe6;
  border-radius:15px;
  background:#fff;
  color:#4b2354;
  text-decoration:none;
  padding:15px;
  text-align:left;
  display:grid;
  align-content:start;
  gap:5px;
  cursor:pointer;
  font-family:inherit;
}

button.retail-shortcut{
  width:100%;
}

.retail-shortcut:hover{
  border-color:#d8c1d2;
  box-shadow:0 8px 22px rgba(75,35,84,.07);
}

.retail-shortcut>span{
  width:31px;
  height:31px;
  border-radius:10px;
  display:grid;
  place-items:center;
  background:#f8edf3;
  color:#8a4671;
  font-size:16px;
  margin-bottom:3px;
}

.retail-shortcut b{
  font:700 12px Poppins,Arial,sans-serif;
}

.retail-shortcut small{
  color:#7c707b;
  font-size:9.5px;
  line-height:1.45;
}

.retail-profile-section{
  border-top:1px solid #ece3e9;
  padding-top:20px;
}

.retail-section-title{
  margin-bottom:14px;
}

.retail-section-title span{
  display:block;
  color:#a2577b;
  font:700 8px Poppins,Arial,sans-serif;
  letter-spacing:.11em;
  margin-bottom:3px;
}

.retail-section-title h5{
  margin:0;
  color:#4b2354;
  font:700 17px Poppins,Arial,sans-serif;
}

.retail-profile-form{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:end;
}

.retail-profile-form label{
  min-width:0;
}

.retail-profile-form input[readonly]{
  background:#f7f5f7;
  color:#6f6670;
}

.retail-google-linked{
  min-height:46px;
  border:1px solid #e3dce4;
  border-radius:11px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:9px 12px;
  background:#fbfafb;
}

.retail-google-linked>span{
  width:27px;
  height:27px;
  border:1px solid #e0e0e0;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#4285f4;
  font:700 14px Arial;
}

.retail-google-linked b,
.retail-google-linked small{
  display:block;
}

.retail-google-linked b{
  color:#4b2354;
  font:700 10px Poppins;
}

.retail-google-linked small{
  color:#817681;
  font-size:8.5px;
  margin-top:2px;
}

.retail-account-actions{
  border-top:1px solid #ece3e9;
  padding-top:13px;
  align-items:center;
}

.retail-delete-link{
  border:0;
  background:transparent;
  color:#aa4968;
  font:600 10px Poppins,Arial,sans-serif;
  cursor:pointer;
}

/* Staff: solo aparece cuando el servidor devuelve admin/trabajador */
.staff-account-dashboard .retail-dashboard-head{
  margin-bottom:0;
}

.retail-staff-access{
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center;
}

.retail-staff-access .role-access-btn{
  white-space:nowrap;
}

/* Vistas secundarias de seguridad */
.account-retail-card .account-tabs.compact{
  display:flex;
  justify-content:center;
  margin-bottom:16px;
}

.account-retail-card .account-tabs.compact .account-tab{
  background:#f7f1f6;
  border-color:#eaddea;
  padding:7px 12px;
  font-size:9px;
}

@media(max-width:760px){
  .account-retail-card,
  .account-retail-card.is-dashboard-mode{
    width:calc(100vw - 16px)!important;
    max-height:calc(100dvh - 16px);
    border-radius:15px!important;
  }

  .account-retail-brand{
    min-height:68px;
    padding:12px 46px 11px;
  }

  .account-retail-brand img{
    width:145px;
  }

  .account-retail-brand span{
    display:none;
  }

  .account-retail-close{
    top:12px!important;
    right:12px!important;
  }

  .account-retail-main{
    padding:23px 18px 26px!important;
  }

  .retail-auth-head h4{
    font-size:23px;
  }

  .retail-customer-shortcuts{
    grid-template-columns:1fr;
  }

  .retail-shortcut{
    min-height:82px;
    grid-template-columns:34px minmax(0,1fr);
    column-gap:10px;
  }

  .retail-shortcut>span{
    grid-row:1/3;
  }

  .retail-profile-form{
    grid-template-columns:1fr;
  }

  .retail-staff-access{
    grid-template-columns:1fr!important;
  }

  .retail-staff-access .role-access-icon{
    display:none;
  }

  .retail-staff-access .role-access-btn{
    width:100%;
    white-space:normal;
  }
}

@media(max-width:390px){
  .account-retail-main{
    padding:20px 14px 22px!important;
  }

  .retail-auth-head h4{
    font-size:21px;
  }

  .retail-auth-form input{
    min-height:46px;
  }

  .retail-primary-action,
  .retail-create-button{
    min-height:45px!important;
  }
}


/* REBOX V65 · Constancia de pedido */
.customer-order-actions{display:flex;justify-content:flex-end;margin-top:12px;padding-top:12px;border-top:1px solid #eee5ea}
.customer-order-actions .btn{min-height:34px;padding:8px 13px;text-decoration:none!important}
@media(max-width:620px){.customer-order-actions{justify-content:stretch}.customer-order-actions .btn{width:100%;justify-content:center}}
