/* Grasbera — iniciar sesión / registrarse / contraseña con el diseño del sitio.
   Estas páginas sí cargan los assets de Odoo (Bootstrap + el tema): todo va
   bajo .gb-acceso para ganarles y el formulario de Odoo se viste sin tocar
   su marcado. */

/* ---------- marco: sin el encabezado ni el pie del tema ---------- */
#wrapwrap:has(.gb-acceso){background:var(--asfalto)}
#wrapwrap:has(.gb-acceso)>header,#wrapwrap:has(.gb-acceso)>footer{display:none!important}
.gb-acceso{min-height:100vh;display:flex;flex-direction:column;background:
  radial-gradient(1100px 520px at 88% 8%,#f5b80012,transparent 60%),var(--asfalto);
  color:var(--blanco);font:400 17px/1.55 var(--body);padding-top:72px;overflow-x:clip}
.gb-acceso a{color:inherit}

/* barra: Bootstrap también define .btn y .nav */
.gb-acceso .barra{background:#0e0f11d9;backdrop-filter:blur(14px)}
.gb-acceso .barra .btn-faro,.gb-acceso .barra .btn-faro:hover,.gb-acceso .barra .btn-faro:focus,.gb-acceso .barra .btn-faro:active{
  background:var(--faro);color:var(--asfalto);border:0;box-shadow:none}
.gb-acceso .barra .btn-faro:hover{background:#ffc928}
.gb-acceso .nav{flex-wrap:nowrap;margin:0;padding:0}

/* ---------- contenido ---------- */
.acceso{flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,460px);
  grid-template-areas:"txt card" "extra card";column-gap:clamp(40px,7vw,120px);
  align-content:center;padding-block:clamp(48px,9vh,110px) clamp(32px,6vh,72px)}
.acceso-txt{grid-area:txt;align-self:end;display:flex;flex-direction:column;gap:20px}
.acceso-txt .eyebrow{margin:0}
.gb-acceso .acceso-txt h1{font-size:clamp(44px,5.6vw,92px);color:var(--blanco);margin:0}
.gb-acceso .acceso-txt h1 em{font-style:normal;color:var(--faro)}
.acceso-lead{margin:0;color:#d4d5d8;font-size:clamp(16px,1.35vw,19px);max-width:38ch}
.acceso-extra{grid-area:extra;align-self:start;margin-top:36px}
.acceso-lista{list-style:none;margin:0;padding:0;border-top:1px solid var(--linea);max-width:520px}
.acceso-lista li{display:flex;gap:18px;padding:16px 0;border-bottom:1px solid var(--linea)}
.acceso-lista b{font:500 11px/1.9 var(--mono);letter-spacing:.1em;color:var(--faro)}
.acceso-lista span{display:flex;flex-direction:column;gap:2px;color:var(--niebla);font-size:15px}
.acceso-lista strong{color:var(--blanco);font-weight:600}
.acceso-ayuda{margin:22px 0 0;font-size:14.5px;color:var(--niebla)}
.gb-acceso .acceso-ayuda a{color:var(--blanco);text-decoration:underline;text-decoration-color:var(--faro);text-underline-offset:4px}

/* ---------- tarjeta con el formulario de Odoo ---------- */
.acceso-card{grid-area:card;align-self:center;background:var(--grafito);border:1px solid var(--linea);
  border-radius:28px;padding:clamp(24px,3vw,40px);box-shadow:0 40px 80px -48px #000;
  --bs-body-color:var(--blanco);--bs-body-bg:#0e0f11;--bs-border-color:var(--linea);
  --bs-secondary-color:var(--niebla);--bs-emphasis-color:var(--blanco);--bs-heading-color:var(--blanco);
  --bs-link-color-rgb:245,184,0;--bs-link-hover-color-rgb:255,201,40;color:var(--blanco)}
.gb-acceso .acceso-card form,.gb-acceso .acceso-card .oe_login_form{max-width:none;margin:0;padding:0}
.gb-acceso .acceso-card .mb-3{margin-bottom:20px!important}
.gb-acceso .acceso-card .form-label,.gb-acceso .acceso-card .col-form-label{
  font:500 11px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--niebla);
  margin:0 0 10px;padding:0}
.gb-acceso .acceso-card .o_caps_lock_warning>.d-flex{align-items:baseline!important}
.gb-acceso .acceso-card .form-control{background:#0e0f11;color:var(--blanco);border:1px solid var(--linea);
  border-radius:14px;padding:14px 16px;font:400 16px/1.3 var(--body);box-shadow:none;min-height:52px}
.gb-acceso .acceso-card .form-control::placeholder{color:#6f7176;opacity:1}
.gb-acceso .acceso-card .form-control:focus{border-color:var(--faro);box-shadow:0 0 0 3px #f5b80026;background:#0e0f11;color:var(--blanco)}
.gb-acceso .acceso-card .form-control[readonly]{color:var(--niebla)}
.gb-acceso .acceso-card .form-control:-webkit-autofill{-webkit-box-shadow:0 0 0 60px #0e0f11 inset;-webkit-text-fill-color:var(--blanco);caret-color:var(--blanco)}
.gb-acceso .acceso-card .input-group>.form-control{border-right:0}
.gb-acceso .acceso-card .input-group:focus-within>.form-control,.gb-acceso .acceso-card .input-group:focus-within>.btn{border-color:var(--faro)!important}
.gb-acceso .acceso-card .input-group:focus-within>.form-control{box-shadow:none}

/* botones: primero se neutraliza el .btn del sitio (píldora con salto) */
.gb-acceso .acceso-card .btn{transform:none;width:auto;box-shadow:none}
.gb-acceso .acceso-card .btn-primary{display:flex;width:100%;background:var(--faro);color:var(--asfalto);border:0;
  border-radius:999px;padding:16px 20px;font:600 15.5px/1.1 var(--body)}
.gb-acceso .acceso-card .btn-primary:hover,.gb-acceso .acceso-card .btn-primary:focus,.gb-acceso .acceso-card .btn-primary:active{
  background:#ffc928;color:var(--asfalto)}
.gb-acceso .acceso-card .btn-link{display:inline;background:none;border:0;padding:0;border-radius:0;
  font:500 13.5px/1.4 var(--body);color:var(--faro);text-decoration:none}
.gb-acceso .acceso-card .btn-link:hover{color:#ffc928;text-decoration:underline;text-underline-offset:3px}
.gb-acceso .acceso-card .oe_login_buttons{gap:6px;padding-top:24px!important}
.gb-acceso .acceso-card .oe_login_buttons>.btn-link{justify-self:center;margin-top:10px!important}
.gb-acceso .acceso-card .input-group>.o_show_password{display:flex;align-items:center;background:#0e0f11;color:var(--niebla);
  border:1px solid var(--linea)!important;border-left:0!important;border-radius:0 14px 14px 0;padding:0 16px;font-size:15px}
.gb-acceso .acceso-card .input-group>.o_show_password:hover{color:var(--blanco)}
.gb-acceso .acceso-card a:not(.btn):not(.list-group-item){color:var(--faro);text-decoration:none}
.gb-acceso .acceso-card a:not(.btn):not(.list-group-item):hover{color:#ffc928;text-decoration:underline}

/* «- o -» y llave de acceso / otros proveedores */
.gb-acceso .acceso-card .o_login_auth em{color:var(--niebla);font:400 11px/1.4 var(--mono);letter-spacing:.1em;margin:20px 0 14px!important}
.gb-acceso .acceso-card .list-group{gap:8px;--bs-list-group-bg:transparent;--bs-list-group-border-color:var(--linea)}
.gb-acceso .acceso-card .list-group-item{background:transparent;color:var(--blanco);border:1px solid var(--linea)!important;
  border-radius:999px!important;padding:14px 20px!important;font:600 15px/1.1 var(--body);transition:border-color .2s,background .2s}
.gb-acceso .acceso-card .list-group-item:hover{background:#ffffff0a;border-color:#ffffff59!important;color:var(--blanco)}
.gb-acceso .acceso-card .list-group-item i{color:var(--faro)}
/* lista de usuarios recordados (web.user_switch) */
.gb-acceso .acceso-card .list-group-item-action:focus{background:#ffffff0a;color:var(--blanco)}

/* avisos */
.gb-acceso .acceso-card .alert{border-radius:14px;padding:12px 14px;font-size:14.5px;margin:16px 0 0}
.gb-acceso .acceso-card .alert-danger{background:#b3261e24;color:#ffb4ab;border:1px solid #b3261e66}
.gb-acceso .acceso-card .alert-success{background:#1f7a4a24;color:#9fe0bb;border:1px solid #1f7a4a66}
.gb-acceso .acceso-card .alert-info,.gb-acceso .acceso-card .alert-warning{background:#ffffff0a;color:#d4d5d8;border:1px solid var(--linea)}
.gb-acceso .acceso-card .text-muted,.gb-acceso .acceso-card .small{color:var(--niebla)!important}
.gb-acceso .acceso-card .oe_structure:empty{display:none}

/* ---------- foto y pie ---------- */
.acceso-foto{margin:0;position:relative;pointer-events:none}
.acceso-foto img{width:100%;height:auto;max-height:520px;object-fit:cover;object-position:62% 70%;opacity:.9}
.acceso-foto::before{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(180deg,var(--asfalto) 0%,transparent 34%,transparent 76%,var(--asfalto) 100%)}
.acceso-pie{padding-bottom:40px}

@media (max-width:980px){
  .acceso{grid-template-columns:minmax(0,1fr);grid-template-areas:"txt" "card" "extra";gap:28px;padding-block:40px 24px}
  .acceso-txt{align-self:start}
  .acceso-card{max-width:560px;width:100%}
  .acceso-extra{margin-top:12px}
}
@media (max-width:480px){
  .acceso-card{border-radius:22px;padding:22px 18px}
  .gb-acceso .acceso-txt h1{font-size:44px}
}
