/* ============================================================
 * Popover "Mi Cuenta" — header desktop · Genechen Motor
 * ============================================================ */
.gn-pop{
  position:fixed; top:0; left:0; z-index:9999;
  width:360px; max-width:calc(100vw - 24px);
  background:#fff; border-radius:16px;
  box-shadow:0 20px 60px rgba(15,15,20,.22), 0 2px 10px rgba(15,15,20,.08);
  font-family:'Outfit',system-ui,sans-serif;
  opacity:0; visibility:hidden; transform:translateY(-8px) scale(.98);
  transition:opacity .16s ease, transform .16s ease, visibility .16s;
  padding:22px;
}
.gn-pop.gn-pop-open{ opacity:1; visibility:visible; transform:translateY(0) scale(1); }
.gn-pop *{ box-sizing:border-box; }
.gn-pop-arrow{
  position:absolute; top:-7px; right:28px; width:14px; height:14px;
  background:#fff; transform:rotate(45deg); border-radius:3px 0 0 0;
  box-shadow:-2px -2px 4px rgba(15,15,20,.03);
}

/* ---- estado: login ---- */
.gn-pop-eyebrow{ font-size:10.5px; font-weight:700; color:#E9501D; letter-spacing:.1em; text-transform:uppercase; margin-bottom:6px; }
.gn-pop-title{ font-size:18px; font-weight:800; color:#0A0A0C; letter-spacing:-.01em; margin-bottom:16px; }
.gn-pop-social{ display:grid; grid-template-columns:1fr 1fr; gap:9px; margin-bottom:14px; }
.gn-pop-soc{
  height:42px; border:1.5px solid #E5E7EB; border-radius:9px; background:#fff;
  display:flex; align-items:center; justify-content:center; gap:7px;
  font-size:12.5px; font-weight:700; color:#374151; text-decoration:none; cursor:pointer;
  transition:border-color .15s, background .15s;
}
.gn-pop-soc:hover{ border-color:#9CA3AF; background:#F9FAFB; }
.gn-pop-soc svg{ width:15px; height:15px; flex-shrink:0; }
.gn-pop-divider{ display:flex; align-items:center; gap:10px; margin:12px 0; color:#B6BCC8; font-size:11px; font-weight:600; }
.gn-pop-divider::before, .gn-pop-divider::after{ content:''; flex:1; height:1px; background:#EEF0F3; }
.gn-pop-form{ display:flex; flex-direction:column; gap:5px; }
.gn-pop-form label{ font-size:10.5px; font-weight:700; color:#374151; letter-spacing:.04em; text-transform:uppercase; margin:7px 0 5px; }
.gn-pop-form label:first-of-type{ margin-top:0; }
.gn-pop-form input{
  height:42px; border:1.5px solid #E5E7EB; border-radius:9px; padding:0 13px;
  font-family:'Outfit',sans-serif; font-size:13.5px; color:#0A0A0C; background:#FAFAFA; width:100%;
}
.gn-pop-form input:focus{ outline:0; border-color:#E9501D; box-shadow:0 0 0 3px rgba(233,80,29,.12); background:#fff; }
.gn-pop-submit,
.gn-pop-submit:hover,
.gn-pop-submit:active,
.gn-pop-submit:focus,
.gn-pop-submit:visited{
  margin-top:12px; width:100%; height:44px; background:#E9501D !important; color:#fff; border:0 !important; border-radius:9px;
  font-family:'Outfit',sans-serif; font-size:12.5px; font-weight:800; letter-spacing:.05em; text-transform:uppercase;
  cursor:pointer; box-shadow:none !important; filter:none !important; transition:background .15s;
  outline:none !important; -webkit-tap-highlight-color:transparent; appearance:none; -webkit-appearance:none; -moz-appearance:none;
  text-shadow:none !important; background-image:none !important;
}
.gn-pop-submit:hover{ background:#C8410D !important; }
.gn-pop-submit:focus-visible{ box-shadow:0 0 0 3px rgba(233,80,29,.35) !important; }
.gn-pop-submit:disabled{ opacity:.65; cursor:default; }
.gn-pop-form input:focus{ outline:none; }
.gn-pop-soc:focus{ outline:none; }
.gn-pop-soc:focus-visible{ box-shadow:0 0 0 3px rgba(233,80,29,.25); }
.gn-pop-err{
  background:#FEF2F2; border:1px solid #FCA5A5; color:#B91C1C; font-size:12px; font-weight:600;
  border-radius:8px; padding:8px 11px; margin-bottom:2px; line-height:1.4;
}
.gn-pop-links{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:14px; flex-wrap:wrap; }
.gn-pop-links a{ font-size:11.5px; color:#9CA3AF; text-decoration:none; }
.gn-pop-links a:hover{ color:#E9501D; }
.gn-pop-links a b{ color:#E9501D; font-weight:700; }

/* ---- estado: logueado (mini menú) ---- */
.gn-pop-menu{ display:flex; flex-direction:column; }
.gn-pop-hi{ display:flex; align-items:center; gap:11px; padding-bottom:14px; margin-bottom:6px; border-bottom:1px solid #F0F0F3; }
.gn-pop-av{
  width:38px; height:38px; border-radius:50%; flex-shrink:0;
  background:linear-gradient(135deg,#E9501D,#ff8a4d); color:#fff; font-weight:800; font-size:15px;
  display:flex; align-items:center; justify-content:center;
}
.gn-pop-hi-n{ font-size:14px; font-weight:800; color:#0A0A0C; }
.gn-pop-hi-e{ font-size:11.5px; color:#9CA3AF; margin-top:1px; }
.gn-pop-item{
  display:flex; align-items:center; gap:11px; padding:10px 8px; border-radius:9px;
  font-size:13.5px; font-weight:600; color:#374151; text-decoration:none; transition:background .15s;
}
.gn-pop-item:hover{ background:#F6F7F9; }
.gn-pop-item svg{ width:18px; height:18px; stroke:#9aa1ab; flex-shrink:0; }
.gn-pop-item.out{ color:#9CA3AF; }
.gn-pop-sep{ height:1px; background:#F0F0F3; margin:6px 0; }

@media(max-width:900px){
  .gn-pop{ display:none !important; }
}
