/* V3 Innlogging 03.11 (InnloggingMobil 1–8, InnloggingDesktop). Shared by the app, the admin, the trial and /koble-til.
   Everything is scoped to .auth-v3 so older entry styles never reach the login. */
@font-face{font-family:Geist;src:url(/fonts/Geist-Variable.woff2) format("woff2");font-weight:100 900;font-display:swap}
.auth-v3{--a-ink:#16181d;--a-text:#3d4049;--a-muted:#6b6f78;--a-line:rgba(16,24,40,.13);--a-canvas:#f3f3f2;--a-focus:#174ea6;--a-red:#e5484d;--a-red-text:#b4232a;--a-ctl:#c3c6cd;--gap:var(--a-canvas);
 display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;box-sizing:border-box;background:var(--a-canvas);color:var(--a-ink);font:400 15px/22px Geist,Arial,sans-serif;-webkit-font-smoothing:antialiased}
.auth-v3 *,.auth-v3 *::before,.auth-v3 *::after{box-sizing:border-box}
.auth-v3 :is(h1,h2,p){margin:0}
.auth-v3 :is(h1,h2){font:600 26px/32px Geist,Arial,sans-serif;letter-spacing:-.5px;color:var(--a-ink)}
.auth-v3 b{font-weight:600;color:var(--a-ink);overflow-wrap:anywhere}
.auth-v3 svg{flex:none}
.auth-v3 [hidden]{display:none!important}

/* Top bar: logo left, help (phone) or the trial (desktop) right */
.auth-v3 .auth-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;height:56px;margin:0;padding:0 20px;border:0;border-bottom:.5px solid var(--a-line);background:#fff}
.auth-v3 .auth-logo{display:inline-flex;align-items:center;gap:6px;min-height:44px;font:600 16px/1 Geist,Arial,sans-serif;letter-spacing:-.2px;color:var(--a-ink);text-decoration:none;white-space:nowrap}
.auth-v3 .auth-logo svg{width:18px;height:18px}
.auth-v3 .auth-top-right{display:flex;align-items:center;gap:14px}
.auth-v3 .auth-top .auth-link{font-size:14px}
.auth-v3 .entry-label{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#f3f3f2;color:var(--a-text);font:500 13px/1 Geist,Arial,sans-serif;box-shadow:inset 0 0 0 .5px rgba(16,24,40,.22);white-space:nowrap}

/* Links and buttons */
.auth-v3 .auth-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin:0;padding:0;border:0;background:none;font:500 15px/20px Geist,Arial,sans-serif;color:var(--a-ink);text-decoration:underline;text-decoration-color:rgba(22,24,29,.35);text-underline-offset:4px;white-space:nowrap;cursor:pointer}
.auth-v3 .auth-link svg{width:16px;height:16px}
.auth-v3 .auth-link[aria-disabled=true],.auth-v3 .auth-link:disabled{color:var(--a-muted);text-decoration:none;cursor:default}
.auth-v3 .auth-link .ic{stroke:var(--a-muted)}
.auth-v3 .auth-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;min-height:0;margin:0;padding:0 16px;border:0;border-radius:10px;font:500 15px/1 Geist,Arial,sans-serif;white-space:nowrap;text-decoration:none;cursor:pointer}
.auth-v3 .auth-btn.lg{height:48px}
.auth-v3 .auth-btn.sm{height:36px;padding:0 12px;border-radius:8px;font-size:14px}
.auth-v3 .auth-btn svg{width:18px;height:18px}
.auth-v3 .auth-btn.primary{background:var(--a-ink);color:#fff;box-shadow:0 1px 2px rgba(16,24,40,.18),inset 0 1px 0 rgba(255,255,255,.08)}
.auth-v3 .auth-btn.secondary{background:#fff;color:var(--a-ink);box-shadow:inset 0 0 0 1px var(--a-ctl),0 1px 1px rgba(16,24,40,.04)}
.auth-v3 .auth-btn:disabled,.auth-v3 .auth-btn.primary:disabled{background:#e6e7ea;color:var(--a-muted);box-shadow:none;cursor:default}
.auth-v3 .auth-btn.entry-working{background:#e6e7ea;color:var(--a-muted);box-shadow:none}
.auth-v3 :is(.auth-btn,.auth-link,input):focus-visible{outline:2px solid var(--a-focus);outline-offset:3px}

/* The page: on a phone one column with the action pinned at the bottom */
.auth-v3 .auth-main{display:flex;flex:1;flex-direction:column;width:100%;min-height:0;margin:0;padding:0;max-width:none}
.auth-v3 .auth-card{display:flex;flex:1;flex-direction:column;min-width:0;margin:0}
.auth-v3 .auth-body{display:flex;flex:1;flex-direction:column;gap:20px;padding:24px 20px}
.auth-v3 .auth-body>*{flex-shrink:0}
.auth-v3 .auth-head{display:flex;flex-direction:column;gap:4px}
.auth-v3 .auth-sub{margin:0;font:400 15px/22px Geist,Arial,sans-serif;color:var(--a-text)}
.auth-v3 .auth-quiet{margin:0;font:400 13px/18px Geist,Arial,sans-serif;color:var(--a-muted);white-space:nowrap}
.auth-v3 .auth-hint{margin:-12px 0 0;font:400 13px/18px Geist,Arial,sans-serif;color:var(--a-muted)}
.auth-v3 .auth-body>.auth-link{align-self:flex-start;margin-top:-8px}
.auth-v3 .auth-alt{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0 6px;margin:auto 0 0;font:400 14px/20px Geist,Arial,sans-serif;color:var(--a-text);white-space:nowrap}
.auth-v3 .auth-alt .auth-link{font-size:14px}
.auth-v3 .auth-foot{position:sticky;bottom:0;z-index:2;display:grid;grid-template-columns:1fr 2fr;gap:12px;flex:none;padding:12px 16px max(28px,env(safe-area-inset-bottom));background:#fff;border-top:.5px solid var(--a-line)}
.auth-v3 .auth-foot.one{grid-template-columns:1fr}
.auth-v3 .auth-foot>.auth-btn{width:100%}
.auth-v3 .auth-foot-left{display:none}
.auth-v3 .auth-below,.auth-v3 .auth-bottom,.auth-v3 .auth-desktop{display:none}

/* Fields */
.auth-v3 .auth-field{display:flex;flex-direction:column;gap:10px;margin:0;font-weight:400}
.auth-v3 .auth-label{font:500 14px/20px Geist,Arial,sans-serif;color:var(--a-ink)}
.auth-v3 .auth-input{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 14px;border-radius:10px;background:#fff;box-shadow:inset 0 0 0 1px var(--a-ctl)}
.auth-v3 .auth-input:focus-within{box-shadow:inset 0 0 0 1px var(--a-focus),0 0 0 3px var(--gap),0 0 0 5px var(--a-focus)}
.auth-v3 .auth-input.err{box-shadow:inset 0 0 0 1.5px var(--a-red)}
.auth-v3 .auth-input>svg{width:20px;height:20px;stroke:var(--a-muted)}
.auth-v3 .auth-input input{flex:1;width:auto;min-width:0;height:46px;min-height:0;margin:0;padding:0;border:0;border-radius:0;outline:0;background:none;box-shadow:none;font:400 16px/1 Geist,Arial,sans-serif;letter-spacing:normal;color:var(--a-ink);appearance:none}
.auth-v3 .auth-input input::placeholder{color:#8b8d98}
.auth-v3 .auth-input.is-static{background:#f6f5f1;box-shadow:inset 0 0 0 1px #dcdde1;font-size:16px;color:var(--a-text)}
.auth-v3 .auth-input .auth-code-one{letter-spacing:.3em;font-variant-numeric:tabular-nums}
.auth-v3 .entry-eye{position:static;display:inline-flex;flex:none;align-items:center;gap:6px;width:auto;height:36px;min-height:0;margin:0 -6px 0 0;padding:0 8px;border:0;border-radius:8px;background:none;font:500 14px/1 Geist,Arial,sans-serif;color:var(--a-ink);cursor:pointer}
.auth-v3 .entry-eye svg{width:18px;height:18px}
.auth-v3 .auth-otp{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.auth-v3 .auth-otp input{width:100%;min-width:0;height:56px;min-height:0;margin:0;padding:0;border:0;border-radius:10px;background:#fff;box-shadow:inset 0 0 0 1px var(--a-ctl);font:600 24px/1 Geist,Arial,sans-serif;text-align:center;color:var(--a-ink);outline:0;font-variant-numeric:tabular-nums}
.auth-v3 .auth-otp input:focus{box-shadow:inset 0 0 0 1px var(--a-focus),0 0 0 3px var(--gap),0 0 0 5px var(--a-focus)}
.auth-v3 .auth-otp.err input{box-shadow:inset 0 0 0 1.5px var(--a-red)}
.auth-v3 .auth-otp.dead input{background:#f6f5f1;box-shadow:inset 0 0 0 1px #dcdde1}

/* Messages: a red line under the field, a white confirmation with a green tick */
.auth-v3 .auth-err{display:flex;align-items:center;gap:6px;margin:-12px 0 0;padding:0;border:0;border-radius:0;background:none;font:500 13px/18px Geist,Arial,sans-serif;color:var(--a-red-text)}
.auth-v3 .auth-err::before{content:"";flex:none;width:16px;height:16px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 8v4M12 16h.01'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 8v4M12 16h.01'/%3E%3C/svg%3E") center/contain no-repeat}
.auth-v3 .auth-ok{display:flex;align-items:center;gap:6px;align-self:stretch;min-height:0;margin:-12px 0 0;padding:0;border:0;border-radius:0;background:none;font:500 13px/18px Geist,Arial,sans-serif;color:#1d7a4b}
.auth-v3 .auth-ok svg{width:16px;height:16px;stroke:#218358;stroke-width:2.2}
.auth-v3 .auth-links,.auth-v3 .auth-resend-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:-8px}
.auth-v3 .auth-resend-row{flex-wrap:nowrap}
.auth-v3 .auth-spam{margin-top:-12px}

/* Centred states: check the e-mail, restoring, welcome */
.auth-v3 .auth-center{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:40px;text-align:center}
.auth-v3 .auth-center .auth-sub{max-width:320px}
.auth-v3 .auth-center .entry-actions{display:flex;justify-content:center;gap:20px}
.auth-v3 .auth-body>.auth-bottom-note{margin:auto 0 0;text-align:center}
.auth-v3 .auth-tile.auth-desktop{display:none}
.auth-v3 .auth-tile{display:grid;flex:none;place-items:center;width:40px;height:40px;border-radius:10px}
.auth-v3 .auth-tile.lg{width:52px;height:52px;border-radius:13px}
.auth-v3 .auth-tile svg{width:20px;height:20px}
.auth-v3 .auth-tile.lg svg{width:24px;height:24px}
.auth-v3 .t-blue{background:#e6f4fe;color:#0d74ce;box-shadow:inset 0 0 0 .5px rgba(0,144,255,.35)}
.auth-v3 .t-green{background:#e6f6eb;color:#218358;box-shadow:inset 0 0 0 .5px rgba(48,164,108,.4)}
.auth-v3 .t-red{background:#feebec;color:#ce2c31;box-shadow:inset 0 0 0 .5px rgba(229,72,77,.4)}
.auth-v3 .auth-spin{display:block;width:28px;height:28px;border-radius:50%;border:2.5px solid #dcdde1;border-top-color:var(--a-ink);animation:auth-spin .9s linear infinite}
.auth-v3 .auth-spin span{display:none}
@keyframes auth-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.auth-v3 .auth-spin{animation:none}}

/* Demo accounts on the portal */
.auth-v3 .entry-accounts{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;border:0}
.auth-v3 .entry-account{display:flex;align-items:center;gap:10px;min-height:44px}

/* Desktop: one white card in the middle, the action in its foot */
@media (min-width:761px){
 .auth-v3:not(.embedded) .auth-top{height:64px;padding:0 40px}
 .auth-v3:not(.embedded) .auth-logo{font-size:17px}
 .auth-v3:not(.embedded) .auth-logo svg{width:20px;height:20px}
 .auth-v3 .auth-top .auth-help{display:none}
 .auth-v3 .auth-desktop{display:inline-flex}
 .auth-v3 .auth-mobile{display:none}
 .auth-v3:not(.embedded){--gap:#fff}
 .auth-v3:not(.embedded) .auth-main{align-items:center;gap:20px;padding:88px 24px 0}
 .auth-v3:not(.embedded) .auth-card{flex:none;width:480px;max-width:100%;border-radius:14px;background:#fff;box-shadow:0 0 0 .5px rgba(16,24,40,.13),0 1px 2px rgba(16,24,40,.05),0 6px 18px rgba(16,24,40,.05)}
 .auth-v3:not(.embedded) .auth-body{gap:24px;padding:36px 40px 28px}
 .auth-v3:not(.embedded) :is(h1,h2){font-size:28px;line-height:34px}
 .auth-v3:not(.embedded) .auth-alt{display:none}
 .auth-v3:not(.embedded) .auth-foot{position:static;display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:16px 40px;border-radius:0 0 14px 14px}
 .auth-v3:not(.embedded) .auth-foot>.auth-btn{width:auto;min-width:132px}
 .auth-v3:not(.embedded) .auth-foot-left{display:flex;margin-right:auto}
 .auth-v3:not(.embedded) .auth-foot-left .auth-desktop{display:flex}
 .auth-v3:not(.embedded) .auth-otp{gap:10px}
 .auth-v3:not(.embedded) .auth-otp input{height:60px;font-size:26px}
 .auth-v3:not(.embedded) .auth-resend-row{margin-top:-10px}
 .auth-v3:not(.embedded) .auth-resend-row>span:empty{display:none}
 .auth-v3:not(.embedded) .auth-center{margin-top:8px}
 .auth-v3:not(.embedded) .auth-body>.auth-bottom-note{margin:0;text-align:center}
 .auth-v3 .auth-below{display:flex;align-items:center;gap:6px;margin:0;font:400 14px/20px Geist,Arial,sans-serif;color:var(--a-text);white-space:nowrap}
 .auth-v3 .auth-below .auth-link{font-size:14px}
 .auth-v3 .auth-bottom{display:flex;align-items:center;justify-content:center;gap:24px;flex:none;height:64px;margin-top:auto}
 .auth-v3 .auth-bottom .auth-link{font-size:13px;color:var(--a-muted)}
}
@media (min-width:761px){.auth-v3 .auth-tile.auth-desktop{display:grid}}
/* The field's own ring shows focus; the input inside it needs no second one. */
.auth-v3 .auth-input input:focus-visible{outline:0}
/* V3 kontroll 4b 03.11 */
.auth-v3 .auth-desktop-inline{display:none}
@media (min-width:761px){.auth-v3:not(.embedded) .auth-desktop-inline{display:inline}}
.auth-v3 .auth-warn{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:12px;background:#fff;box-shadow:0 0 0 .5px rgba(16,24,40,.13),0 1px 2px rgba(16,24,40,.05)}
.auth-v3 .auth-warn p{display:flex;flex-direction:column;gap:2px;margin:0;font:400 13px/19px Geist,Arial,sans-serif;color:#3d4049}
.auth-v3 .auth-warn b{font:600 14px/20px Geist,Arial,sans-serif;color:#16181d}
.auth-v3 .auth-warn .auth-tile{width:28px;height:28px;border-radius:8px}
.auth-v3 .auth-warn .auth-tile svg{width:16px;height:16px}
.auth-v3 .t-amber{background:#fff7c2;color:#ab6400;box-shadow:inset 0 0 0 .5px rgba(255,197,61,.6)}
.auth-v3 .auth-limit{margin:-12px 0 0}
.auth-v3 .auth-limit[hidden]{display:none}
@media (min-width:761px){.auth-v3:not(.embedded) .auth-mobile-inline{display:none}}
