/* Sigmanex CMMS v1.1.4 - reference-matched CELLINDO login */
html, body { min-height: 100%; }
body.cellindo-login-page { margin: 0; background: #071422; overflow-x: hidden; }
body.cellindo-login-page #root { min-height: 100vh; }

.cellindo-login-root {
  position: relative !important;
  min-height: 100vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  padding: 38px clamp(70px, 18vw, 360px) 38px clamp(42px, 6.4vw, 120px) !important;
  background:
    linear-gradient(90deg, rgba(4,12,22,.26) 0%, rgba(4,12,22,.34) 44%, rgba(4,12,22,.56) 100%),
    url('/assets/cellindo-login-bg-v114.png') center center / cover no-repeat !important;
  isolation: isolate;
}
.cellindo-login-root::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(circle at 60% 44%, rgba(23,129,225,.22), transparent 35%),
    linear-gradient(180deg, rgba(2,9,17,.08), rgba(2,9,17,.24));
}
.cellindo-login-root::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  box-shadow: inset 0 0 145px 36px rgba(0,0,0,.36);
}

.cellindo-login-copy {
  position: absolute;
  left: clamp(54px, 6.4vw, 120px);
  top: 39%;
  width: min(610px, 39vw);
  color: #fff;
  text-shadow: 0 3px 28px rgba(0,0,0,.48);
}
.cellindo-login-copy .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  padding: 8px 14px;
  border: 1px solid rgba(105,190,255,.64);
  border-radius: 999px;
  background: rgba(8,32,54,.50);
  box-shadow: inset 0 0 0 1px rgba(65,161,238,.08), 0 8px 24px rgba(0,0,0,.14);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
  color: #d9efff;
  font-size: 12px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.cellindo-login-copy .eyebrow::before {
  content: '';
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #31adff;
  box-shadow: 0 0 0 5px rgba(49,173,255,.14), 0 0 17px rgba(49,173,255,.72);
}
.cellindo-login-copy h2 {
  margin: 22px 0 15px;
  max-width: 610px;
  color: #fff;
  font-size: clamp(42px, 4.25vw, 66px);
  line-height: 1.00;
  letter-spacing: -.045em;
  font-weight: 850;
}
.cellindo-login-copy p {
  margin: 0;
  max-width: 590px;
  color: rgba(224,238,250,.92);
  font-size: clamp(14px, 1.05vw, 17px);
  line-height: 1.58;
  font-weight: 450;
}

.cellindo-login-shell {
  width: min(100%, 530px) !important;
  max-width: 530px !important;
  position: relative;
  box-sizing: border-box;
  padding: 34px 38px 29px !important;
  border: 1px solid rgba(112,186,244,.55) !important;
  border-radius: 28px !important;
  background: linear-gradient(155deg, rgba(27,61,93,.88), rgba(10,31,52,.95)) !important;
  box-shadow:
    0 34px 90px rgba(0,0,0,.40),
    inset 0 1px 0 rgba(255,255,255,.10),
    0 0 0 1px rgba(54,146,222,.06) !important;
  backdrop-filter: blur(20px) saturate(130%);
  -webkit-backdrop-filter: blur(20px) saturate(130%);
}
.cellindo-login-shell::before {
  content: '';
  position: absolute;
  top: -1px;
  left: 12%;
  right: 12%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(93,190,255,.86), transparent);
}

.cellindo-login-header {
  margin: 0 0 26px !important;
  padding: 0 !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}
.cellindo-login-header > div:first-child:not(.cellindo-login-logo-wrap) { display: none !important; }
.cellindo-login-logo-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 220px;
  height: 112px;
  margin: -2px auto 5px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
.cellindo-login-logo {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  filter: drop-shadow(0 10px 24px rgba(0,111,221,.20));
}
.cellindo-login-header h1 {
  margin: 0 !important;
  color: #fff !important;
  font-size: 27px !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em !important;
  font-weight: 850 !important;
}
.cellindo-login-header h1 .cellindo-blue { color: #2da8ff; }
.cellindo-login-header p {
  margin: 7px 0 0 !important;
  color: rgba(198,222,241,.80) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  letter-spacing: .005em;
}

.cellindo-login-card {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.cellindo-login-welcome { margin: 0 0 21px; }
.cellindo-login-welcome h2 {
  margin: 0;
  color: #fff;
  font-size: 32px;
  line-height: 1.12;
  letter-spacing: -.038em;
  font-weight: 850;
}
.cellindo-login-welcome p {
  margin: 7px 0 0;
  color: rgba(208,225,241,.81);
  font-size: 14px;
  line-height: 1.48;
}

.cellindo-login-card form { display: grid; gap: 15px; }
.cellindo-login-card form > div { margin: 0 !important; }
.cellindo-login-card label {
  color: rgba(241,247,252,.96) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}
.cellindo-login-card a {
  color: #34a9ff !important;
  text-decoration: underline !important;
  text-underline-offset: 2px;
}
.cellindo-login-card a:hover { color: #82ccff !important; }
.cellindo-login-card input[type='email'],
.cellindo-login-card input[type='password'],
.cellindo-login-card input[type='text'].cellindo-password-input {
  height: 55px !important;
  border: 1px solid rgba(154,202,239,.45) !important;
  border-radius: 12px !important;
  background: rgba(28,58,88,.75) !important;
  color: #eaf5ff !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025) !important;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}
.cellindo-login-card input::placeholder { color: rgba(187,209,228,.64) !important; }
.cellindo-login-card input:focus {
  border-color: rgba(71,178,255,.90) !important;
  background: rgba(25,57,87,.92) !important;
  box-shadow: 0 0 0 3px rgba(37,151,246,.13) !important;
}
.cellindo-login-card .relative > svg { color: #c0dcf3 !important; }
.cellindo-login-card #password { padding-right: 48px !important; }

.cellindo-password-toggle {
  position: absolute;
  right: 9px;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #c5def2;
  cursor: pointer;
}
.cellindo-password-toggle:hover { background: rgba(255,255,255,.07); color: #fff; }
.cellindo-password-toggle svg { width: 19px; height: 19px; }

.cellindo-login-options {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 28px;
}
.cellindo-remember {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: rgba(225,238,249,.88);
  font-size: 13px;
  cursor: pointer;
  user-select: none;
}
.cellindo-remember input {
  width: 17px;
  height: 17px;
  margin: 0;
  accent-color: #1e95ff;
}
.cellindo-login-secure {
  font-size: 12px;
  color: rgba(177,205,227,.65);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.cellindo-login-secure::before {
  content: '';
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #17d986;
  box-shadow: 0 0 0 5px rgba(23,217,134,.10), 0 0 15px rgba(23,217,134,.75);
}

.cellindo-login-card button[type='submit'] {
  height: 57px !important;
  margin-top: 2px;
  border: 0 !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, #17a2ff 0%, #0871f4 100%) !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: .005em;
  box-shadow: 0 14px 30px rgba(7,113,244,.28) !important;
  transition: transform .18s ease, filter .18s ease, box-shadow .18s ease !important;
}
.cellindo-login-card button[type='submit']::after {
  content: '  →';
  display: inline-block;
  margin-left: 10px;
  font-size: 22px;
  line-height: 0;
  vertical-align: -1px;
}
.cellindo-login-card button[type='submit']:hover:not(:disabled) {
  transform: translateY(-1px);
  filter: brightness(1.07);
  box-shadow: 0 17px 35px rgba(7,113,244,.35) !important;
}

.cellindo-login-footer-hidden { display: none !important; }
.cellindo-login-meta {
  margin-top: 25px;
  padding-top: 20px;
  border-top: 1px solid rgba(170,203,233,.16);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: rgba(179,205,226,.67);
  font-size: 11.5px;
}
.cellindo-login-meta strong { color: rgba(220,235,247,.88); font-weight: 750; }

@media (max-width: 1180px) {
  .cellindo-login-root {
    padding-right: clamp(34px, 7vw, 86px) !important;
  }
  .cellindo-login-copy { width: 43vw; left: 5vw; }
  .cellindo-login-copy h2 { font-size: clamp(38px, 4.4vw, 56px); }
}

@media (max-width: 960px) {
  .cellindo-login-root {
    justify-content: center !important;
    padding: 28px 20px !important;
    background-position: 43% center !important;
  }
  .cellindo-login-root::before {
    background: linear-gradient(180deg, rgba(4,14,25,.52), rgba(4,14,25,.78));
  }
  .cellindo-login-copy { display: none; }
  .cellindo-login-shell { width: min(100%, 530px) !important; }
}

@media (max-width: 560px) {
  .cellindo-login-root { padding: 18px 13px !important; }
  .cellindo-login-shell {
    width: 100% !important;
    padding: 25px 20px 21px !important;
    border-radius: 22px !important;
  }
  .cellindo-login-logo-wrap { width: 170px; height: 84px; margin-bottom: 3px; }
  .cellindo-login-header { margin-bottom: 22px !important; }
  .cellindo-login-header h1 { font-size: 23px !important; }
  .cellindo-login-header p { font-size: 10.5px !important; }
  .cellindo-login-welcome h2 { font-size: 28px; }
  .cellindo-login-welcome p { font-size: 12.5px; }
  .cellindo-login-card input[type='email'],
  .cellindo-login-card input[type='password'],
  .cellindo-login-card input[type='text'].cellindo-password-input { height: 52px !important; }
  .cellindo-login-card button[type='submit'] { height: 53px !important; }
  .cellindo-login-secure { font-size: 10.5px; }
  .cellindo-login-meta { font-size: 10px; }
}
