/* ===========================
   LANDING / FORSIDE-OPPSETT
   =========================== */

.cbPoweredBy { display: none !important; }

/* Gjelder KUN forsiden via Page Class */
.home-landing .site-grid {
  min-height: 50svh;
  display: grid;
  grid-template-rows: auto 1fr auto;
}

/* Containeren rundt main + modulene = kolonne uten ekstra luft */
.home-landing .grid-child.container-component {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  padding: 0 !important;
}

/* Null still mellomrom på modul-kort KUN på forsiden */
.home-landing .grid-child.container-component > .main-bottom.card {
  margin: 0 !important;
  padding: 0 !important;
}

/* Bildemodulen = midtfelt, sentrert H/V */
.home-landing .main-bottom.card.landing-hero-box {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}
.home-landing .landing-hero {
  display: block;
  max-width: min(70vw, 900px);
  width: 100%;
  height: auto;
}

/* Login nederst og sentrert */
.home-landing .main-bottom.card.landing-login {
  align-self: center;
  width: clamp(280px, 32vw, 420px);
}

/* Fjern “card”-rammer KUN på forsiden */
.home-landing .card,
.home-landing .card-body,
.home-landing .card-outline,
.home-landing .border,
.home-landing fieldset {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* ===========================
   CB LOGIN – SUPERTYNN & RYDDIG
   =========================== */

/* Sentrér selve CB-loginform og sett ryddig bredde */
form.mod-login.cbLoginForm {
  margin: 0 auto;           /* sentrér */
  max-width: 320px;         /* sett 300–360px etter smak */
}

/* Grid for innmat: venstre = felter/remember, høyre = knapp */
.mod-login.cbLoginForm .mod-login__userdata {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: .35rem .4rem;        /* tett */
}

/* Brukernavn og passord = full bredde (én per rad) */
.mod-login.cbLoginForm .mod-login__username,
.mod-login.cbLoginForm .mod-login__password {
  grid-column: 1 / -1;
}

/* === IKON HØYRE + ÉN LINJE (UANSETT LASTPASS) === */
.mod-login.cbLoginForm .input-group {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;        /* tving alt på samme linje */
  gap: 0;                   /* ingen gap som kan trigge wrap */
}

/* Rekkefølge: input (1) -> LastPass-null (2) -> ikon (3) -> øye-knapp (4) */
.mod-login.cbLoginForm .input-group > .form-control {
  order: 1;
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
}
.mod-login.cbLoginForm .input-group > [data-lastpass-icon-root]{
  order: 2;
  display: block !important;
  position: static !important;
  float: none !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  flex: 0 0 0 !important;
}
.mod-login.cbLoginForm .input-group > .input-group-text {
  order: 3;
  flex: 0 0 auto;
  white-space: nowrap;
}
.mod-login.cbLoginForm .input-group > .input-password-toggle {
  order: 4;
  flex: 0 0 auto;
  margin-left: .25rem;      /* ta bort om du vil ha helt inntil */
}

/* Kompakte høyder/typografi (superkompakt) */
.mod-login.cbLoginForm .form-control {
  height: 28px;
  padding: .15rem .4rem;
  font-size: 12.5px;
  line-height: 1;
  border-top-right-radius: 0;   /* smelt sammen med ikon-pill */
  border-bottom-right-radius: 0;
}
.mod-login.cbLoginForm .input-group-text {
  height: 28px;
  padding: .15rem .35rem;
  line-height: 1;
  font-size: 12px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  background: var(--bs-light, #f3f3f3);
  border-color: rgba(0,0,0,.12);
}
.mod-login.cbLoginForm .input-password-toggle.btn {
  height: 28px;
  padding: .15rem .35rem;
  line-height: 1;
  font-size: 12px;
}

.mod-login.cbLoginForm ::placeholder {
  font-size: 12.5px;
  opacity: .8;
}

/* “Husk meg” venstre, “Logg inn” høyre */
.mod-login.cbLoginForm .mod-login__remember {
  grid-column: 1;
  align-self: center;
  font-size: 12px;
}
.mod-login.cbLoginForm .mod-login__remember .form-check-input {
  transform: scale(.9);
  margin-right: .25rem;
}
.mod-login.cbLoginForm .mod-login__submit {
  grid-column: 2;
  justify-self: end;
}
.mod-login.cbLoginForm .mod-login__submit .btn,
.mod-login.cbLoginForm input[type="submit"] {
  font-size: 12.5px;
  line-height: 1;
  padding: .2rem .55rem;
  height: 28px;
}

/* Lenker rett under feltene – midtstilt og i én linje */
.mod-login.cbLoginForm .mod-login__options {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: .6rem;
  margin: .25rem 0 0;
  padding: 0;
  font-size: 12px;
}
.mod-login.cbLoginForm .mod-login__options li {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Skjul visuelle labels (behold a11y i DOM) */
.mod-login.cbLoginForm label.visually-hidden {
  position: absolute;
  left: -9999px;
}

/* Ekstra sikkerhet: ikke la innhold renne ut i smal posisjon */
.home-landing .main-bottom.card.landing-login,
.mod-login.cbLoginForm { max-width: 100%; overflow: hidden; }
