/* gylab.click · barra minimalista para visitantes sin sesión */
.topbar:not(.topbar-auth):has(.click-guest-catalog-inner){
  background:linear-gradient(120deg,#180a3b,#241053 55%,#160a2f)!important;
  border-bottom:1px solid rgba(184,149,255,.17)!important;
  box-shadow:0 9px 28px rgba(10,6,32,.2)!important;
  position:sticky;
  top:0;
  z-index:110;
}
.click-guest-catalog-inner{
  width:min(1250px,calc(100% - 32px));
  min-height:78px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin:auto;
}
.click-guest-catalog-logo{display:inline-flex;align-items:center;flex:0 0 auto}
.click-guest-catalog-logo img{display:block;width:auto;height:52px;object-fit:contain}
.click-guest-catalog-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}
.click-guest-catalog-actions button,.click-guest-catalog-actions a{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:44px;
  border-radius:999px;
  padding:0 20px;
  font-size:14px;
  line-height:1;
  white-space:nowrap;
  font-weight:850;
  cursor:pointer;
  text-decoration:none!important;
  transition:transform .18s ease,background .18s ease;
}
.click-guest-catalog-login{
  border:1px solid rgba(198,177,255,.44)!important;
  color:#f5efff!important;
  background:rgba(255,255,255,.055)!important;
}
.click-guest-catalog-register{
  border:1px solid #8c4fff!important;
  background:linear-gradient(125deg,#7334e3,#a445fa)!important;
  color:white!important;
  box-shadow:0 7px 20px rgba(106,44,223,.2);
}
.click-guest-catalog-actions a:hover,.click-guest-catalog-actions button:hover{transform:translateY(-1px)}
.click-guest-catalog-actions button:focus-visible,.click-guest-catalog-actions a:focus-visible{outline:2px solid #c2a8ff;outline-offset:3px}
/* El inicio público muestra únicamente la Cartelera, sin bloque adicional de inscripción. */
body.storyhub-page:has(.click-guest-catalog-inner) .storyhub-cinema-shell{margin-top:20px}
/* Diálogo de ingreso aislado de colores del modo oscuro de las demás páginas. */
#guest-login-modal{color-scheme:light}
#guest-login-modal .guest-login-dialog{background:#fff!important;color:#233047!important}
#guest-login-modal .guest-login-dialog h2,
#guest-login-modal .guest-login-dialog label{color:#233047!important}
#guest-login-modal .guest-login-dialog input{color:#233047!important;background:#f8f9ff!important}
#guest-login-modal .guest-login-dialog .guest-login-heading p{color:#67738c!important}
#guest-login-modal .guest-login-dialog .guest-login-submit-solid{background:#7c3aed!important;color:white!important;border:0!important;min-height:48px;border-radius:14px}
#guest-login-modal .guest-login-dialog .guest-login-register-link{color:#64748b!important}
#guest-login-modal .guest-login-dialog .guest-login-register-link a{color:#7136d9!important}
#guest-login-modal .click-google-button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;border:1px solid #d9dce8;border-radius:14px;background:#fff!important;color:#202124!important;font-weight:800;text-decoration:none!important}
#guest-login-modal .click-google-divider{display:flex;align-items:center;gap:12px;margin:13px 0;color:#8d90a0;font-size:12px}
#guest-login-modal .click-google-divider:before,#guest-login-modal .click-google-divider:after{content:'';height:1px;background:#dfe2eb;flex:1}
#guest-login-modal .google-g{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid #dfe4ef;color:#4285f4;background:white;font-weight:900}
@media(max-width:600px){
  .click-guest-catalog-inner{width:calc(100% - 24px);min-height:66px;gap:8px}
  .click-guest-catalog-logo img{height:43px}
  .click-guest-catalog-actions{gap:7px}
  .click-guest-catalog-actions button,.click-guest-catalog-actions a{font-size:12px;padding:0 12px;min-height:40px}
  body.storyhub-page:has(.click-guest-catalog-inner) .storyhub-cinema-shell{margin-top:13px}
}
@media(max-width:335px){
  .click-guest-catalog-logo img{height:38px}
  .click-guest-catalog-actions button,.click-guest-catalog-actions a{padding:0 10px;font-size:11px}
}


/* gylab.click · refuerzo de formulario de acceso en visitante */
body.click-guest-login-open{overflow:hidden}
#guest-login-modal.open{display:grid!important;visibility:visible!important;opacity:1!important}
#guest-login-modal .guest-login-dialog{width:min(460px,calc(100vw - 32px));max-height:calc(100dvh - 30px);overflow-y:auto}
#guest-login-modal .guest-login-form input{width:100%;box-sizing:border-box}
#guest-login-modal .guest-login-dialog .guest-login-close{cursor:pointer}
.click-login-page{min-height:calc(100dvh - 160px);display:grid;place-items:center;padding:34px 16px;background:linear-gradient(145deg,#17102c,#361a6d)}
.click-login-page-card{width:min(460px,100%);box-sizing:border-box;padding:30px 26px;background:#fff;color:#211633;border-radius:24px;box-shadow:0 25px 75px rgba(0,0,0,.25);text-align:center}
.click-login-page-card h1{font-size:27px;color:#211633;margin:8px 0}
.click-login-page-card p{font-size:14px;color:#635a74;line-height:1.5}
.click-login-page-form{display:grid;gap:14px;margin-top:20px;text-align:left}
.click-login-page-form label{display:grid;gap:7px;color:#251d3a;font-weight:750;font-size:13px}
.click-login-page-form input{width:100%;box-sizing:border-box;padding:13px 14px;background:#fafaff;border:1px solid #dcd6ed;border-radius:12px;color:#241834;min-height:46px}
.click-login-page-form button{min-height:48px;border:0;border-radius:13px;background:#7739df;color:white;font-size:15px;font-weight:850;cursor:pointer}
.click-login-page-google{display:flex;justify-content:center;align-items:center;margin:15px 0;padding:13px 14px;border:1px solid #dcd6ed;border-radius:13px;color:#241834;text-decoration:none;font-weight:800;background:#fff}
.click-login-page-card a:not(.click-login-page-google){color:#6830ca;font-weight:800}
@media(max-width:520px){.click-login-page-card{padding:24px 18px}.click-login-page{padding:20px 12px}}

/* Login de invitados: mensaje de credenciales incorrectas a la vista. */
#guest-login-modal .guest-login-auth-error{
  display:flex;align-items:flex-start;gap:11px;
  margin:0 0 16px;padding:13px 14px;
  background:#fff1f1;color:#991b1b!important;
  border:1px solid #f4b8b8;border-left:4px solid #dc2626;
  border-radius:12px;font-size:13px;font-weight:750;
  line-height:1.45;text-align:left;
}
#guest-login-modal .guest-login-auth-error-icon{
  display:grid;flex:0 0 21px;width:21px;height:21px;
  place-items:center;border-radius:50%;background:#dc2626;
  color:#fff;font-size:14px;font-weight:900;
}
#guest-login-modal .guest-login-form input[aria-invalid="true"]{
  border-color:#dc2626!important;box-shadow:0 0 0 3px rgba(220,38,38,.11)!important;
}
@media(max-width:540px){
  #guest-login-modal .guest-login-auth-error{font-size:12.5px;padding:11px 12px}
}
