/* ===== KCI — MOBILE TOP BAR (≤ 991.98px) ===== */
@media (max-width: 991.98px){
  .kci-authbar .container-xxl{
    display:flex; align-items:center; justify-content:space-between; gap:10px; position:relative;
  }
  .kci-authbar .navbar-brand{ order:1; margin:0; flex:1 1 auto; display:flex; align-items:center; }
  .kci-authbar .navbar-toggler{ order:2; padding:.35rem .55rem; background:#fff; border:1px solid #e5e7eb; border-radius:10px; }
  .kci-authbar .navbar-toggler .navbar-toggler-icon{ filter:invert(35%); }

  .kci-authbar .navbar-collapse{
    position:absolute; left:12px; right:12px; top:calc(100% + 8px);
    z-index:1019; background:rgba(255,255,255,.96);
    backdrop-filter:blur(10px) saturate(1.1);
    border:1px solid #e8eef6; border-radius:14px; padding:12px;
    box-shadow:0 12px 28px rgba(15,23,42,.16), 0 2px 8px rgba(15,23,42,.08);
  }
  .kci-authbar .navbar-collapse.collapse:not(.show){ display:none; }

  .kci-authbar .kci-pill, .kci-authbar .dropdown-toggle{ width:100%; min-height:46px; }
  .kci-authbar .dropdown-menu{
    width:100%; border-radius:12px; border:1px solid #e8eef6; background:rgba(255,255,255,.98);
    box-shadow:0 8px 24px rgba(15,23,42,.16);
  }

  .page{ padding-top:10px; padding-bottom:18px; }
  .container-xxl{ padding-left:14px; padding-right:14px; }
}

/* ===== KCI — DESKTOP TOP BAR (≥ 992px) ===== */
@media (min-width: 992px){
  .kci-authbar{
    height:66px; min-height:66px; background:rgba(255,255,255,.88);
    backdrop-filter:saturate(1.15) blur(6px);
    border-bottom:1px solid rgba(12,20,33,.06); box-shadow:0 2px 24px rgba(12,20,33,.05);
  }
  .kci-authbar .container-xxl{ gap:14px; }
  .kci-authbar .navbar-brand.brandmark{ gap:10px; margin:0; padding:0; }
  .kci-authbar .brand-logo{
    width:34px; height:34px; border-radius:10px;
    background:linear-gradient(135deg, #2563eb, #22c55e);
    display:grid; place-items:center; color:#fff; font-size:16px;
    box-shadow:0 2px 10px rgba(37,99,235,.18);
  }
  .kci-authbar .navbar-collapse{
    position:static !important; display:flex !important; align-items:center;
    flex-wrap:nowrap !important; justify-content:flex-end !important; gap:10px;
    background:transparent; border:0; padding:0; box-shadow:none;
    flex:0 0 auto !important; width:auto !important;
  }
  .kci-authbar .navbar-collapse > .ms-lg-3{
    display:inline-flex !important; align-items:center !important; gap:10px !important;
    flex:0 0 auto !important; width:auto !important; margin:0 0 0 12px !important;
  }
  .kci-authbar .dropdown-menu{
    min-width:220px; border:1px solid #e6ebf2; border-radius:12px; background:#fff;
    box-shadow:0 16px 34px rgba(12,20,33,.12);
  }
  .kci-authbar .navbar-toggler{ display:none !important; }
}

/* ===== LOGIN CARD (shared) ===== */
.login-card h2{ font-weight:800; letter-spacing:-.2px; margin-bottom:.75rem; }
.login-card .form-label{ font-weight:700; margin-bottom:.35rem; }
.login-card .input-group{
  border:1px solid #e6ebf2; border-radius:12px; background:#fff; overflow:hidden;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.login-card .input-group:focus-within{ border-color:#93c5fd; box-shadow:0 0 0 4px rgba(37,99,235,.14); }
.login-card .input-group-text{ background:#f7f9fc; border:0; border-right:1px solid #edf2f7; }
.login-card .form-control{ border:0; box-shadow:none!important; padding:.7rem .85rem; }

/* ===== Header/dropdown always on top (final) ===== */
.kci-authbar{ position: sticky; top:0; z-index:2200; isolation:isolate; }
.kci-authbar, .kci-authbar .container-xxl, .kci-authbar .navbar{ overflow:visible !important; }
.kci-authbar .dropdown-menu{ z-index:5000 !important; }
.kci-lang-menu{ min-width:220px; }

/* --- Header & dropdown layering (works on /login too) --- */
.kci-authbar{ position:sticky; top:0; z-index:2200; isolation:isolate; }
.kci-authbar, .kci-authbar .container-xxl, .kci-authbar .navbar{
  overflow:visible !important;
}
.kci-authbar .dropdown-menu{
  position:absolute;           /* ensure it's not statically laid out */
  z-index:5000 !important;     /* above form focus rings, etc. */
  min-width:220px;
}

/* Header and dropdown above any form/glow layers */
.kci-authbar{ position: sticky; top:0; z-index:2200; isolation:isolate; }
.kci-authbar, .kci-authbar .container-xxl, .kci-authbar .navbar{ overflow:visible !important; }
.kci-authbar .dropdown-menu{ z-index:5000 !important; min-width:220px; }
