/* INFOCHECKIN 2.7.54 · navegación común para público, huésped, hotelero y admin. */

.ic-main-navbar{
  --ic-nav-solid:#172554;
  --ic-nav-solid-dark:#0f172a;
  --ic-nav-soft:rgba(255,255,255,.12);
  --ic-nav-soft-strong:rgba(255,255,255,.2);
  position:sticky;
  top:0;
  z-index:1030;
  min-height:68px;
  border-bottom:1px solid rgba(255,255,255,.14);
  background:linear-gradient(118deg,var(--ic-nav-solid),var(--ic-nav-solid-dark))!important;
  box-shadow:0 10px 28px rgba(15,23,42,.16)!important;
}

.ic-main-navbar.ic-nav-public{--ic-nav-solid:#172554;--ic-nav-solid-dark:#0f172a}
.ic-main-navbar.ic-nav-checkin{--ic-nav-solid:#047857;--ic-nav-solid-dark:#065f46}
.ic-main-navbar.ic-nav-panel{--ic-nav-solid:#1d4ed8;--ic-nav-solid-dark:#1e3a8a}
.ic-main-navbar.ic-nav-admin{--ic-nav-solid:#9f1239;--ic-nav-solid-dark:#7f1d1d}

body.ic-layout-public,
body.ic-layout-access{background:#f5f7fb}
body.ic-layout-checkin{background:#f0fdfa}
body.ic-layout-panel{background:#eff6ff}
body.ic-layout-admin{background:#fff1f2}

#acceso-checkin{scroll-margin-top:88px}

.ic-layout-public footer.site-footer,
.ic-layout-access footer.site-footer{background:#0f172a}
.ic-layout-checkin footer.site-footer{background:#064e3b}
.ic-layout-panel footer.site-footer{background:#172554}
.ic-layout-admin footer.site-footer{background:#4c0519}

.ic-main-navbar .navbar-brand{
  color:#fff;
  border-radius:14px;
  padding:.25rem .38rem;
}
.ic-main-navbar .navbar-brand:hover{color:#fff;background:rgba(255,255,255,.07)}
.ic-main-navbar .navbar-brand:focus-visible,
.ic-main-navbar .nav-link:focus-visible,
.ic-main-navbar .dropdown-item:focus-visible{
  outline:3px solid #fde68a;
  outline-offset:2px;
  box-shadow:none;
}
.ic-main-navbar .ic-brand-icon{
  background:rgba(255,255,255,.12);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
}
.ic-main-navbar .ic-brand-sub{color:rgba(255,255,255,.82);opacity:1}

.ic-role-badge{
  border:1px solid rgba(255,255,255,.42);
  box-shadow:0 2px 8px rgba(15,23,42,.12);
  font-weight:900;
}
.ic-role-public{background:#dbeafe;color:#172554}
.ic-role-access{background:#fef3c7;color:#78350f}
.ic-role-checkin{background:#d1fae5;color:#065f46}
.ic-role-panel{background:#dbeafe;color:#1e3a8a}
.ic-role-admin{background:#ffe4e6;color:#881337}

.ic-main-navbar .navbar-nav{column-gap:.2rem}
.ic-main-navbar .nav-link{
  color:rgba(255,255,255,.9)!important;
  border:1px solid transparent;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
.ic-main-navbar .nav-link:hover,
.ic-main-navbar .nav-link:focus{
  color:#fff!important;
  background:var(--ic-nav-soft);
  border-color:rgba(255,255,255,.12);
}
.ic-main-navbar .nav-link.active,
.ic-main-navbar .nav-link.ic-menu-active{
  color:#fff!important;
  background:var(--ic-nav-soft-strong)!important;
  border-color:rgba(255,255,255,.18);
  box-shadow:inset 0 -2px 0 rgba(255,255,255,.68);
}

.ic-main-navbar .ic-nav-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:.44rem .78rem!important;
  border-radius:12px;
  font-weight:900;
  box-shadow:0 5px 14px rgba(15,23,42,.15);
}
.ic-main-navbar .ic-nav-login,
.ic-main-navbar .ic-nav-login.active{
  color:var(--ic-nav-solid-dark)!important;
  background:#fff!important;
  border-color:#fff!important;
  box-shadow:0 5px 16px rgba(15,23,42,.2)!important;
  text-shadow:none!important;
}
.ic-main-navbar .ic-nav-login:hover,
.ic-main-navbar .ic-nav-login:focus{
  color:var(--ic-nav-solid-dark)!important;
  background:#f8fafc!important;
  transform:translateY(-1px);
}
.ic-main-navbar .ic-nav-exit,
.ic-main-navbar .ic-nav-exit.active{
  color:#9a3412!important;
  background:#fff7ed!important;
  border-color:#fed7aa!important;
  box-shadow:0 5px 16px rgba(67,20,7,.18)!important;
  text-shadow:none!important;
}
.ic-main-navbar .ic-nav-exit:hover,
.ic-main-navbar .ic-nav-exit:focus{
  color:#7c2d12!important;
  background:#ffedd5!important;
  border-color:#fdba74!important;
  transform:translateY(-1px);
}

.ic-main-navbar .dropdown-menu{border:1px solid #e2e8f0}
.ic-main-navbar .dropdown-item{color:#334155}
.ic-main-navbar .dropdown-item:hover,
.ic-main-navbar .dropdown-item:focus{background:#f1f5f9;color:#0f172a}
.ic-main-navbar .dropdown-item.active,
.ic-main-navbar .dropdown-item:active{
  color:var(--ic-nav-solid)!important;
  background:#eef2ff!important;
}
.ic-main-navbar .dropdown-header{padding-top:.5rem;padding-bottom:.35rem}

.ic-main-navbar .navbar-toggler{
  border:1px solid rgba(255,255,255,.38);
  border-radius:12px;
  padding:.4rem .55rem;
}
.ic-main-navbar .navbar-toggler:focus{box-shadow:0 0 0 .2rem rgba(255,255,255,.22)}

@media (min-width:1200px){
  .ic-layout-public .ic-main-navbar .navbar-brand,
  .ic-layout-access .ic-main-navbar .navbar-brand{flex:0 1 255px;max-width:255px}
  .ic-layout-checkin .ic-main-navbar .navbar-brand{flex:0 1 360px;max-width:360px}
  .ic-main-navbar .ic-nav-auth-item{margin-left:.28rem!important}
}

@media (max-width:1199.98px){
  .ic-main-navbar{min-height:64px}
  .ic-main-navbar .navbar-collapse{
    max-height:calc(100vh - 84px);
    overflow-y:auto;
    overscroll-behavior:contain;
    border:1px solid rgba(255,255,255,.12);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  }
  .ic-main-navbar .navbar-nav{align-items:stretch!important;gap:.3rem!important}
  .ic-main-navbar .nav-link{display:flex;align-items:center;width:100%}
  .ic-main-navbar .nav-link i:first-child{width:1.25rem;text-align:center}
  .ic-main-navbar .ic-nav-action{margin-top:.2rem;min-height:46px}
  .ic-main-navbar .dropdown-menu{margin:.25rem 0 .4rem}
}

@media (max-width:575.98px){
  .ic-main-navbar .container-fluid{padding-left:.65rem!important;padding-right:.65rem!important}
  .ic-main-navbar .navbar-brand{max-width:calc(100vw - 82px)}
  .ic-main-navbar .ic-brand-sub{max-width:170px}
  .ic-main-navbar .ic-role-badge{font-size:.64rem}
}

@media (prefers-reduced-motion:reduce){
  .ic-main-navbar .nav-link{transition:none}
}
