/* Mobil: administrasjon, import, Min konto, innloggingen og feilsidene (Anders 05.10.2026:
   «Alt må være med! Hele appen, som en ordentlig app for telefon»).

   Alt står under `max-width: 720px` — over det er sidene nøyaktig som før. Det eneste unntaket
   er `.mbare`, som er markering malene har fått for telefonen alene (en «‹ Min konto»-lenke og
   liknende); den er skjult over 720 px.

   Språket er skissene «Sesongpuls mobil»: kort med 16 px radius og myk skygge, tabeller blir
   lister med én rad per ting, vinduene blir ark nedenfra, feltene står i full bredde, 48 px høye
   med 16 px tekst (iOS zoomer inn i alt under 16), og alt man trykker på er minst 44 px. */

.mbare { display: none; }

@media (max-width: 720px) {
  .mbare { display: revert; }

  /* =====================================================================
     Felles: felt, knapper og sidehodet
     ===================================================================== */
  .side--admin .felt__input,
  .side--admin .felt__valg,
  .side--konto .felt__input,
  .side--konto .felt__valg,
  .kontoside .felt__input,
  .kontoside .felt__valg,
  .filtre .felt__valg,
  dialog.vindu-dialog--bruker .felt__input,
  dialog.vindu-dialog--bruker .felt__valg,
  dialog.vindu-dialog--inviter .felt__input,
  dialog.vindu-dialog--inviter .felt__valg,
  dialog.vindu-dialog--part .felt__input,
  dialog.vindu-dialog--part .felt__valg,
  body.inngang .felt__input {
    min-height: 48px;
    font-size: 16px;
  }

  .side--admin .knapp,
  .side--konto .knapp,
  .kontoside .knapp,
  body.inngang .knapp,
  body.side--feil .knapp { min-height: 44px; touch-action: manipulation; }

  .side--admin .sidehode { margin-bottom: 4px; gap: 14px; align-items: stretch; }
  .side--admin .sidehode > div:first-child { flex: 1 1 100%; min-width: 0; }
  .side--admin .sidehode__ingress { font-size: 15px; }
  .side--admin .sidehode > .knapp { flex: 1 1 100%; }

  /* =====================================================================
     Administrasjonen: sidemenyen blir en rad med chips som ruller
     ===================================================================== */
  .adminlayout { display: flex; flex-direction: column; align-items: stretch; gap: 18px; }
  .adminlayout__innhold { gap: 16px; }
  .adminlayout .rutenett { grid-template-columns: minmax(0, 1fr); gap: 16px; }

  .sidemeny {
    position: static;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 8px;
    margin: -6px -16px 0;
    padding: 2px 16px 6px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    scroll-padding-inline: 16px;
    scrollbar-width: none;
    background: none;
    border-radius: 0;
    box-shadow: none;
    /* Kanten mot høyre forteller at raden fortsetter. */
    -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent);
    mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent);
  }
  .sidemeny::-webkit-scrollbar { display: none; }
  .sidemeny__tittel,
  .sidemeny__ikon,
  .sidemeny__strek { display: none; }
  .sidemeny__punkt {
    flex: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 40px;
    padding: 0 16px;
    border: 1px solid var(--neutral-400);
    border-radius: var(--radius-pill);
    background: var(--neutral-100);
    font-size: 14px;
    white-space: nowrap;
    scroll-snap-align: start;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
    transition: background-color var(--fart-rask) ease, transform 120ms var(--ease-ut);
  }
  .sidemeny__punkt:active { transform: scale(0.97); }
  .sidemeny__punkt--valgt { border-color: var(--bama-blue); background: var(--bama-blue); color: var(--neutral-100); }
  .sidemeny__punkt--valgt .sidemeny__teller { background: var(--yellow-500); }
  .sidemeny__punkt:last-child { margin-right: 12px; }

  /* =====================================================================
     Tabeller som lister: `mliste` på tabellen, én rad = ett kort-element.
     Overskriftene er skjult for øyet, men står for skjermleseren.
     ===================================================================== */
  .mliste,
  .mliste table,
  .mliste .tabellramme,
  .mliste tbody { display: block; width: 100%; }
  .mliste thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
  }
  .mliste tr {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px 12px;
    padding: 14px 16px;
    border-bottom: 1px solid var(--neutral-300);
  }
  .mliste tr:last-child { border-bottom: 0; }
  .mliste td {
    display: block;
    min-width: 0;
    padding: 0;
    border: 0;
  }
  .mliste .tabell__tom { grid-column: 1 / -1; padding: 24px 0; text-align: center; }
  .mliste .mliste__hel { grid-column: 1 / -1; }
  .mliste .mliste__hoyre { justify-self: end; }
  .mliste .tabell__pil { display: none; }
  .mliste .tabell__handling { position: relative; z-index: 1; }
  .mliste td[data-etikett]::before {
    content: attr(data-etikett);
    display: block;
    margin-bottom: 2px;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--neutral-700);
  }
  .tabellkort:has(.mliste),
  .tabellramme:has(> .mliste),
  .mliste .tabellramme { overflow: hidden; }

  /* To spalter med etikett over verdien; tittelen og de lange cellene går over hele raden. */
  .mliste--to tr { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; gap: 12px 16px; padding: 16px; }
  .mliste .mliste__tittel {
    grid-column: 1 / -1;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 16px;
    color: var(--bama-blue);
    white-space: normal;
  }
  .mliste .mliste__forst { order: -1; }
  .mliste td.tabell__tall { white-space: normal; }
  .mliste .radskjema { flex-wrap: nowrap; }
  .mliste .radskjema .felt__input { flex: 1 1 auto; min-width: 0; min-height: 44px; font-size: 16px; }
  .mliste .radskjema .knapp--tekst { min-height: 44px; padding: 0 12px; font-size: 14px; }
  .mliste .nokkelverdi div { gap: 12px; }

  /* Tabeller som må beholde kolonnene: egen rullende boks, første kolonne står fast. */
  .mrull { position: relative; overflow-x: auto; overscroll-behavior-x: contain; }
  .mrull .tabell th,
  .mrull .tabell td { padding: 10px 12px; white-space: nowrap; }
  .mrull .tabell th:first-child,
  .mrull .tabell td:first-child {
    position: sticky;
    left: 0;
    z-index: 1;
    background: var(--neutral-100);
    box-shadow: 1px 0 0 var(--neutral-300);
  }

  /* ---------- Brukere og roller ---------- */
  .brukerliste tr { grid-template-columns: minmax(0, 1fr) auto; padding: 14px 16px; }
  .brukerliste td:first-child { grid-column: 1 / -1; }
  .brukerliste .brukercelle { display: flex; align-items: center; gap: 12px; text-decoration: none; }
  .brukerliste .brukercelle__initialer { width: 40px; height: 40px; flex: none; }
  .brukerliste .brukercelle__navn { font-size: 16px; }
  .brukerliste .brukercelle__epost { font-size: 13px; overflow-wrap: anywhere; }
  .brukerliste .brukerliste__roller { grid-column: 1 / -1; padding-left: 52px; }
  .brukerliste .brukerliste__sist { padding-left: 52px; white-space: normal; }
  .brukerliste .brukerliste__status { justify-self: end; }
  .brukerliste .tabell__vis-som { grid-column: 1 / -1; padding-left: 52px; text-align: left; }
  .brukerliste .tabell__vis-som:empty { display: none; }
  .brukerliste .tabell__vis-som .knapp { min-height: 40px; }
  .side--admin .tabellfot { flex-direction: column; gap: 6px; padding: 12px 16px; }

  .side--admin .filterrad {
    flex-wrap: nowrap;
    overflow-x: auto;
    margin: 0 -16px;
    padding: 0 16px 2px;
    scrollbar-width: none;
  }
  .side--admin .filterrad::-webkit-scrollbar { display: none; }
  .side--admin .filterrad__punkt { flex: none; min-height: 40px; padding: 0 14px; font-size: 13px; }

  /* Pil mot høyre på rader som åpner et vindu. */
  .registerliste tr::after,
  .brukerliste tr::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 18px;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-right: 1.8px solid var(--neutral-500);
    border-bottom: 1.8px solid var(--neutral-500);
    transform: rotate(-45deg);
    pointer-events: none;
  }
  .brukerliste tr::after { top: 34px; margin-top: 0; }

  /* ---------- Produsentregisteret ---------- */
  .registersok { flex-wrap: nowrap; width: 100%; }
  .registersok__felt { flex: 1 1 auto; min-width: 0; min-height: 48px; font-size: 16px; }
  .registersok__knapp { flex: none; min-height: 48px; }
  .registerliste tr {
    grid-template-columns: auto minmax(0, 1fr);
    gap: 6px 10px;
    padding: 14px 40px 14px 16px;
  }
  .registerliste td:first-child,
  .registerliste .tabell__kontakt { grid-column: 1 / -1; min-width: 0; }
  .registerliste .partcelle__navn { font-size: 16px; }
  .registerliste__type { align-self: center; font-size: 13px; }
  .registerliste__produkter { align-self: center; }
  .registerliste .kontaktcelle { overflow-wrap: anywhere; }

  /* ---------- Filtrene (sikkerhetsloggen, importkjøringene): to og to ---------- */
  .side--admin .filtre,
  form.filtre {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: end;
    gap: 12px;
    padding: 16px;
  }
  form.filtre .felt { min-width: 0; }
  form.filtre .felt__input,
  form.filtre .felt__valg { width: 100%; min-width: 0; min-height: 48px; font-size: 16px; }
  form.filtre > .knapp { min-height: 48px; }

  /* ---------- Sikkerhetsloggen ---------- */
  .logliste .logliste__tid { grid-column: 1 / -1; order: -1; margin-top: -8px; font-size: 13px; color: var(--neutral-700); }
  .logliste .mliste__forst { order: -2; }
  .logliste td { overflow-wrap: anywhere; font-size: 13px; }
  .logliste tr { gap: 8px 16px; }
  .sidevelger { gap: 8px; }
  .sidevelger .knapp--tekst { min-height: 44px; padding: 0 14px; font-size: 15px; }

  /* ---------- Importkjøringene: navn og status, så resten på én linje ---------- */
  .importliste tr {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 0;
    padding: 14px 40px 14px 16px;
  }
  .importliste tr::before { content: ""; order: 3; flex: 0 0 100%; height: 0; }
  .importliste__navn { order: 1; flex: 1 1 auto; }
  .importliste__status { order: 2; flex: none; margin-left: 12px; }
  .importliste__meta { order: 4; flex: none; font-size: 13px; color: var(--neutral-700); white-space: nowrap; }
  /* Skilletegnet følger feltet foran, så en linje som brytes, aldri begynner med «·» (revisjonen
     22.10.2026, V79). Antall rader står alltid sist. */
  .importliste__meta:not(.importliste__rader)::after { content: "·"; margin: 0 6px; }
  .importliste__rader::after { content: " rader"; }
  .importliste__lenke {
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 16px;
    color: var(--bama-blue);
    text-decoration: none;
  }
  .importliste__lenke::after { content: ""; position: absolute; inset: 0; }
  .importliste tr:has(.importliste__lenke)::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 18px;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-right: 1.8px solid var(--neutral-500);
    border-bottom: 1.8px solid var(--neutral-500);
    transform: rotate(-45deg);
    pointer-events: none;
  }
  .importliste tr:has(.importliste__lenke):active { background: var(--yellow-50); }
  .importliste .tabell__tom { flex: 1 1 100%; order: 5; }

  /* Import i en kategori: opplastingsknappene står under hverandre i full bredde. */
  .sidehode > .feilside__handlinger { flex: 1 1 100%; flex-direction: column; align-items: stretch; gap: 8px; }
  .sidehode > .feilside__handlinger .knapp { min-height: 44px; font-size: 14px; }
  .tellerrad { gap: 8px; margin: 0; }

  /* ---------- Navnekoblingen: hvert valg i sin egen full-bredde blokk ---------- */
  .kolinje__hode { gap: 6px 8px; }
  .kolinje__navn { flex: 1 1 100%; }
  .kolinje__dato { margin-left: 0; }
  .kolinje__dato.knapp--tekst { min-height: 44px; font-size: 14px; color: var(--bama-blue); }
  .kolinje__handlinger { flex-direction: column; align-items: stretch; gap: 14px; }
  .kolinje__handlinger .radskjema { flex-wrap: wrap; gap: 8px; }
  .kolinje__handlinger .radskjema > *,
  .kolinje__handlinger .radskjema__felt { flex: 1 1 100%; }
  .kolinje__handlinger .felt__input--smal,
  .kolinje__handlinger .felt__valg--smal { width: 100%; min-width: 0; min-height: 48px; font-size: 16px; }
  .kolinje__handlinger .knapp { min-height: 44px; }
  .kolinje__handlinger .knapp--tekst { align-self: flex-start; padding: 0 4px; font-size: 14px; }
  .koblingsvarsel { flex-wrap: wrap; }

  /* ---------- Produsentloggen ---------- */
  /* Er en produsent valgt, står loggen først; velgeren står under, lavere. */
  .plogg { display: flex; flex-direction: column; align-items: stretch; gap: 16px; }
  .plogg:has(.plogg__produsent--valgt) .plogg__historikk { order: -1; }
  .plogg__velger { max-height: 340px; }
  .plogg__produsent { min-height: 44px; }
  .plogg__sokrad .felt__input { min-height: 48px; font-size: 16px; }
  .plogg__sokrad .knapp { min-height: 48px; }
  .side--admin .segment { display: flex; }
  .side--admin .segment__valg { flex: 1 1 0; min-height: 40px; justify-content: center; text-align: center; }

  /* ---------- Innstillinger ---------- */
  /* Lagrepilla står over bunnmenyen, på én linje. */
  .side--admin .lagrebar {
    bottom: calc(var(--bunnmeny-luft) + 10px);
    flex-wrap: nowrap;
    gap: 4px;
    padding: 8px 8px 8px 16px;
    border-radius: 16px;
    box-shadow: 0 8px 24px rgba(12, 31, 95, 0.25);
  }
  .side--admin .lagrebar__tekst { min-width: 0; font-size: 13px; line-height: 1.3; }
  .side--admin .lagrebar .knapp--tekst { padding: 0 10px; font-size: 14px; }
  .side--admin .lagrebar .knapp--gul { flex: none; padding: 0 16px; }

  /* ---------- Import og datastand ---------- */
  .side--admin .panel { padding: 18px 16px; }
  .side--admin .panel--ko,
  .side--admin .panel--parkert { border-left: 0; }
  .side--admin .panel .tabellramme { margin: 0 -16px -18px; border-radius: 0 0 16px 16px; box-shadow: none; border-top: 1px solid var(--neutral-300); }
  .volumkort__tall { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; }
  .volumkort__tall dd { font-size: 18px; }

  /* =====================================================================
     Vinduene i administrasjonen blir ark nedenfra
     ===================================================================== */
  dialog.vindu-dialog--bruker,
  dialog.vindu-dialog--part,
  dialog.vindu-dialog--inviter {
    inset: auto 0 0 0;
    width: 100%;
    max-width: 100%;
    height: fit-content;
    max-height: 92svh;
    margin: 0;
    border-radius: 20px 20px 0 0;
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }
  dialog.vindu-dialog--bruker[open],
  dialog.vindu-dialog--part[open],
  dialog.vindu-dialog--inviter[open] { animation: madm-ark-inn 280ms cubic-bezier(0.32, 0.72, 0, 1); }
  @keyframes madm-ark-inn { from { transform: translateY(100%); } }

  /* Arkets kropp er én kolonne som ruller; toppen står fast. */
  dialog.vindu-dialog--bruker .vindu__kropp--bruker,
  dialog.vindu-dialog--part .vindu__kropp--bruker,
  .vindu--bruker .vindu__kropp--bruker,
  .vindu--part .vindu__kropp--bruker {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 20px 16px 24px;
    overscroll-behavior: contain;
  }
  .vindu--bruker .vindu__kolonne,
  .vindu--part .vindu__kolonne { min-height: auto; flex: none; }

  /* Brukervinduets topp: navnet og lukk øverst, «Vis appen som …» i full bredde under. */
  .vindu__topp--bruker { padding: 16px 16px 14px; }
  .vindu__topp--bruker .vindu__rad {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 12px;
  }
  .vindu__topp--bruker .vindu__navn {
    grid-column: 1;
    grid-row: 1;
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    grid-template-areas: "bilde person" "merker merker";
    gap: 10px 12px;
  }
  .vindu__topp--bruker .vindu__initialer { grid-area: bilde; width: 44px; height: 44px; }
  .vindu__topp--bruker .vindu__person { grid-area: person; min-width: 0; }
  .vindu__topp--bruker .vindu__h2 { font-size: 20px; }
  .vindu__topp--bruker .vindu__setning { overflow-wrap: anywhere; }
  .vindu__topp--bruker .kort__merker { grid-area: merker; }
  .vindu__topp--bruker .vindu__lukk { grid-column: 2; grid-row: 1; }
  .vindu__topp--bruker .vindu__vis-som { grid-column: 1 / -1; grid-row: 2; margin: 0; }
  .vindu__topp--bruker .vindu__vis-som-knapp { width: 100%; min-height: 44px; }

  /* «‹ Min konto» øverst på undersidene, som en tilbakeknapp i en app. */
  .mtilbake {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 6px;
    min-height: 44px;
    margin: -8px 0 -12px -4px;
    padding: 0 8px 0 4px;
    font-family: var(--font-display);
    font-weight: 700;
    font-size: 15px;
    color: var(--bama-blue);
    text-decoration: none;
    -webkit-tap-highlight-color: transparent;
  }
  .mtilbake::before {
    content: "";
    width: 8px;
    height: 8px;
    border-left: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
  }
  .mtilbake:active { opacity: 0.6; }

  /* ---------- Min konto ---------- */
  .side--konto .sidehode { margin-bottom: 16px; align-items: flex-start; flex-wrap: nowrap; }
  .side--konto .sidehode > div:first-child { min-width: 0; }
  .side--konto .sidehode form { flex: none; }
  .side--konto .kontogrid { gap: 16px; }
  .side--konto .panel { padding: 20px 16px; }
  .linje { min-height: 52px; }
  .linje .knapp--tekst { min-height: 44px; padding: 0 12px; font-size: 14px; }
  .linje__handlinger { gap: 0; }
  .side--konto .panel__hode { flex-wrap: wrap; gap: 12px; }
  .side--konto .panel--skjema .skjema > .knapp,
  .kontoside .skjema > .knapp { align-self: stretch; min-height: 48px; }
  .side--konto .pillebryter { min-height: 52px; }

  /* Kontosider, import-kjøringen og opplastingen: skjemaet står rett på flaten, uten kort. */
  .kontoside { padding: 0; }
  .kontoside > .kort {
    width: 100%;
    padding: 4px 0 0;
    background: none;
    border-radius: 0;
    box-shadow: none;
    gap: 20px;
  }
  .kontoside .kort__tittel { font-size: 28px; }

  .kort__noekkel { overflow-wrap: anywhere; }

  /* =====================================================================
     Bannerne og kvitteringsboblene
     ===================================================================== */
  /* Boblene står over bunnmenyen, ikke bak den. På innloggingen er det ingen meny. */
  body:has(.bunnmeny) .kvitteringer { bottom: calc(var(--bunnmeny-luft) + 12px); }
  body.inngang .kvitteringer { bottom: calc(16px + env(safe-area-inset-bottom, 0px)); }
  .kvittering { box-shadow: 0 10px 28px rgba(12, 31, 95, 0.28); }

  /* Datastand- og koblingsbanneret: ikonet til venstre, teksten ved siden av, «Skjul» oppe til høyre. */
  .datastandbanner,
  .ukobletbanner {
    position: relative;
    flex-wrap: nowrap;
    gap: 12px;
    padding: 14px 16px;
    border-radius: 16px;
  }
  .datastandbanner__ikon,
  .ukobletbanner__ikon { width: 32px; height: 32px; }
  .datastandbanner__ikon svg,
  .ukobletbanner__ikon svg { width: 20px; height: 20px; }
  .datastandbanner__innhold { padding-right: 44px; }
  body > .datastandbanner,
  body > .ukobletbanner { margin: 12px auto 0; }
  .datastandbanner__tittel,
  .ukobletbanner__tittel { font-size: 17px; }
  .datastandbanner__tekst,
  .ukobletbanner__tekst { font-size: 14px; line-height: 1.45; }
  .datastandbanner__handlinger,
  .ukobletbanner__handlinger { gap: 4px 16px; margin-top: 8px; }
  .datastandbanner__handlinger .knapp--ramme,
  .ukobletbanner__handlinger .knapp--ramme { min-height: 44px; padding: 0 18px; font-size: 14px; }
  .datastandbanner__handlinger .knapp--tekst { min-height: 44px; font-size: 14px; }
  .datastandbanner__lukk { position: absolute; top: 6px; right: 6px; }
  .datastandbanner__lukkeknapp { min-height: 44px; padding: 0 10px; font-size: 14px; font-weight: 700; }

  /* «Du ser appen som …»: én tett stripe, Avslutt alltid synlig. */
  .vis-som-stripe { gap: 10px; }
  .vis-som-stripe__ikon { flex: none; }
  .vis-som-stripe__tekst { min-width: 0; font-size: 14px; }
  .vis-som-stripe__knapp { flex: none; min-height: 44px; }

  /* =====================================================================
     Feilsidene: kortet i full bredde, handlingene under hverandre
     ===================================================================== */
  body.side--feil .ramme { align-items: flex-start; padding: 20px 16px 32px; }
  .feilside { gap: 14px; }
  .feilside__kort { padding: 24px 20px 22px; gap: 16px; border-radius: 16px; box-shadow: var(--shadow-md); }
  .feilside__ikon { width: 64px; height: 64px; }
  .feilside__ikontekst { font-size: 20px; }
  .feilside__handlinger { flex-direction: column; align-items: stretch; gap: 4px; }
  .feilside__handlinger .knapp--primar { min-height: 48px; }
  .feilside__handlinger .knapp--tekst,
  .feilside__handlinger .lenke--pil { justify-content: center; min-height: 44px; }
  .feilside__bunn { flex-direction: column; gap: 6px; }

  /* =====================================================================
     Innloggingen: avsenderpanelet blir en smal stripe med merket
     ===================================================================== */
  body.inngang { display: flex; flex-direction: column; min-height: 100svh; }
  .avsender {
    flex: none;
    min-height: 0;
    padding: calc(16px + env(safe-area-inset-top, 0px)) 20px 16px;
    gap: 0;
  }
  .avsender .pynt-lag,
  .avsender__pynt,
  .avsender__midt,
  .avsender .sesongfigur,
  .avsender .fakta { display: none; }
  .avsender__logo { height: 30px; }
  .avsender__pluss { width: 17px; height: 17px; }
  .avsender__ordmerke { font-size: 19px; }
  .avsender__strek { height: 7px; }
  .avsender__signatur { font-size: 9px; }

  .skjemapanel {
    flex: 1 0 auto;
    min-height: 0;
    justify-content: flex-start;
    gap: 20px;
    padding: 28px 20px calc(24px + env(safe-area-inset-bottom, 0px));
  }
  body.inngang .kort {
    width: 100%;
    padding: 0;
    background: none;
    border-radius: 0;
    box-shadow: none;
  }
  body.inngang .kort__tittel { font-size: 30px; }
  body.inngang .knapp--full { min-height: 48px; }
  body.inngang .banner { width: 100%; }
  .inngang__bunn { width: 100%; margin-top: auto; padding: 0; }
  .innvalg__knapp { padding: 16px; min-height: 72px; }
  body.inngang [data-vis-passord],
  .kontoside [data-vis-passord] { min-height: 44px; padding: 0 4px; font-size: 14px; }
  body.inngang .kort__midtlenke a,
  .kontoside .kort__midtlenke a { display: inline-flex; align-items: center; min-height: 44px; font-size: 15px; }
  .innvalg__tilbake { display: inline-flex; align-items: center; min-height: 44px; margin-bottom: -16px; font-size: 15px; }
}
