/* Gruppen «auth»: innlogging, bekreftelser, feilsider, faste sider, samtykke, meld fra. Bruker tokens fra koplr.css. */
.a-page{padding:36px 20px 0}
.a-w460{max-width:460px;margin:0 auto}
.a-w620{max-width:620px;margin:0 auto}
.a-w760{max-width:760px;margin:0 auto}
.a-w900{max-width:900px;margin:0 auto}
.a-head{text-align:center;margin-bottom:24px}
.a-head h1{font-size:2.25rem;letter-spacing:-.03em;margin:0 0 6px}
.a-lead{color:#4A5565;font-size:1.05rem;margin:0 0 1.2em}
.a-head .a-lead{margin:0}
.a-card{border:1px solid var(--line);border-radius:14px;background:#fff;padding:28px}
.a-card h1,.a-card h2{margin:0 0 6px}
.a-card h2{font-size:1.5rem}
.a-card .a-sub{margin:0 0 20px;color:#4A5565;font-size:15px}
.a-stack{display:flex;flex-direction:column;gap:16px}
.a-field label{display:block;font-size:14px;font-weight:700;margin-bottom:6px}
.a-field .k-hint{font-size:13px;margin-top:5px}
.a-btn{min-height:44px}
.a-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.a-center{text-align:center}
.a-linkbtn{background:none;border:0;padding:6px;cursor:pointer;font:inherit;font-size:14px;color:var(--primary);font-weight:500}
.a-linkbtn:hover{color:var(--primary-dark);text-decoration:underline}
.a-or{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px}
.a-or:before,.a-or:after{content:"";flex:1;height:1px;background:var(--line)}
.a-small{font-size:13px;color:var(--muted)}
.a-tabs{display:flex;justify-content:center;margin-bottom:22px}
.a-tabs .k-seg a{min-height:40px;display:inline-flex;align-items:center;padding:0 22px;font-size:15px}
.a-tick{width:48px;height:48px;border-radius:50%;background:#E3F4EC;color:#0F6B4B;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;margin-bottom:16px}
.a-mail-ic{width:56px;height:56px;border-radius:50%;background:var(--tint);color:var(--primary);display:flex;align-items:center;justify-content:center;margin-bottom:22px}
.a-note{background:#F4F7FC;border:1px solid var(--line);border-radius:12px;padding:14px;margin-top:18px;font-size:14px;color:#3C4757}
.a-warn{background:#FFF4DB;border:1px solid #F0D9A0;border-radius:12px;padding:14px 16px;margin:0 0 18px;font-size:15px;color:#5C3D00}
.a-warn a{font-weight:700}
.a-draft{background:#FFF4DB;border:1px solid #F0D9A0;border-radius:12px;padding:12px 16px;margin:0 0 24px;font-size:14px;color:#5C3D00}
.a-btn-danger{background:#B3261E}.a-btn-danger:hover{background:#8F1D17}
.a-btn-danger[disabled]{opacity:.5;cursor:not-allowed}
.a-list{margin:0 0 18px;padding-left:20px;color:#3C4757}
.a-list li{margin-bottom:8px}
.a-demo{font-size:13px;color:var(--muted);margin:20px 0 0}
.a-err-box{color:var(--danger);font-size:14px;margin-top:6px}

/* Takk / sjekk e-posten */
.a-wishcard{border:1px solid var(--line);border-radius:14px;padding:22px;margin:0 0 28px}
.a-wishcard small{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}
.a-wishcard strong{display:block;font-size:1.2rem;margin-bottom:2px}
.a-wishcard .a-meta{color:var(--muted);font-size:15px;margin-bottom:12px}
.a-pill-warn{display:inline-block;background:#FFF1D6;color:#8A4B00;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:700}
.a-steps{list-style:none;padding:0;margin:0 0 24px;display:flex;flex-direction:column;gap:18px}
.a-steps li{display:flex;gap:14px;align-items:flex-start}
.a-steps .a-n{flex:none;width:32px;height:32px;border-radius:50%;background:var(--tint);color:var(--primary-dark);font-weight:700;display:flex;align-items:center;justify-content:center;font-size:15px}
.a-steps b{display:block}
.a-steps span{color:var(--muted);font-size:15px}

/* Valg (radio) */
.a-radios{border:0;padding:0;margin:0 0 20px}
.a-radios legend{font-size:14px;font-weight:700;padding:0;margin-bottom:8px}
.a-radio{display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer;font-size:16px}
.a-radio input{width:20px;height:20px;accent-color:var(--primary);margin:0}
.a-subject{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:22px}
.a-subject small{display:block;font-size:13px;color:var(--muted)}
.a-subject strong{display:block;font-size:1.05rem;margin:2px 0}
.a-subject q{display:block;font-size:1.05rem;font-weight:700;quotes:none;margin:2px 0}

/* Tilstandskort (feilsider) */
.a-state{max-width:640px;margin:0 auto;text-align:center;border:1px solid var(--line);border-radius:24px;padding:48px 32px}
.a-state .a-code{font-size:4.5rem;font-weight:700;letter-spacing:-.03em;color:var(--primary);line-height:1.1;margin:0 0 12px}
.a-state .a-code.is-word{font-size:3.2rem}
.a-state h1,.a-state h2{font-size:1.75rem;margin:0 0 12px}
.a-state p{color:#4A5565;max-width:460px;margin:0 auto 24px}
.a-state .a-actions{justify-content:center}

/* Faste sider */
.a-prose h1{font-size:2.5rem;letter-spacing:-.03em;margin:0 0 12px}
.a-prose h2{font-size:1.4rem;margin:2em 0 .5em}
.a-prose p{color:#3C4757}
.a-prose .a-lead{font-size:1.2rem}
.a-foot-note{margin-top:40px;font-size:13px;color:var(--muted)}
.a-contact{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:40px;align-items:start}
.a-contact textarea{min-height:130px;resize:vertical}
.a-aside{border:1px solid var(--line);border-radius:14px;padding:22px;font-size:14px;color:#3C4757}
.a-aside h2{font-size:1.05rem;margin:0 0 10px}
.a-aside p{margin:0 0 8px}

/* Samtykke */
.a-consent{border:1px solid var(--line);border-radius:14px;margin:24px 0}
.a-consent-row{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:20px 22px;border-top:1px solid var(--line)}
.a-consent-row:first-child{border-top:0}
.a-consent-row h2{font-size:1.05rem;margin:0 0 4px}
.a-consent-row p{margin:0;color:#4A5565;font-size:15px}
.a-consent-row .a-on{font-size:13px;font-weight:700;color:var(--muted);white-space:nowrap}
.a-consent-row input[type=checkbox]{width:26px;height:26px;accent-color:var(--primary);flex:none;margin:0 10px}
.a-ok{background:#E3F4EC;border:1px solid #BFE0CB;color:#0F6B4B;font-weight:700;padding:14px 16px;border-radius:12px;margin:0 0 24px}
.a-cookie-table{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:12px 0 20px}
.a-cookie-table table{width:100%;border-collapse:collapse;font-size:15px}
.a-cookie-table th{background:var(--bg);text-align:left;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:12px 14px}
.a-cookie-table td{padding:12px 14px;border-top:1px solid var(--line);vertical-align:top}
.a-banner{position:fixed;left:0;right:0;bottom:0;z-index:100;background:#fff;border-top:1px solid var(--line-in);box-shadow:0 -8px 28px rgba(27,35,48,.14)}
.a-banner-in{max-width:1140px;margin:0 auto;padding:20px 24px;display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.a-banner-text{flex:1 1 420px;min-width:0}
.a-banner-text strong{display:block;font-size:17px;margin-bottom:4px}
.a-banner-text p{margin:0;font-size:14px;color:#4A5565;line-height:1.6}
.a-banner-text a{font-weight:700}
.a-banner-btns{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.a-banner-btns form{margin:0}
.a-bb{font:inherit;font-size:15px;font-weight:700;padding:12px 18px;min-height:46px;border-radius:10px;cursor:pointer;border:2px solid var(--primary);background:#fff;color:var(--primary)}
.a-bb.is-fill{background:var(--primary);color:#fff}
.a-bb:hover{background:var(--tint)}.a-bb.is-fill:hover{background:var(--primary-dark)}
.a-bb:focus-visible,.a-banner a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.a-banner .a-custom{font-size:14px;font-weight:700;padding:10px 6px}

@media(max-width:900px){
 .a-contact{grid-template-columns:minmax(0,1fr);gap:24px}
 .a-head h1{font-size:2.1rem}
 .a-card{padding:22px}
 .a-state{padding:32px 20px}
 .a-prose h1{font-size:2.1rem}
 .a-consent-row{padding:16px}
 .a-banner-in{padding:16px 20px;gap:14px}
 .a-banner-btns{width:100%}
 .a-cookie-table{overflow-x:auto}
 .a-cookie-table table{min-width:520px}
}

.a-side{display:none}
@media (min-width:1000px){.a-page.has-side{display:grid;grid-template-columns:minmax(0,460px) 340px;gap:56px;justify-content:center;align-items:start}.a-page.has-side .a-w460{margin:0}.a-side{display:block;position:sticky;top:96px}.a-side img{width:100%;height:auto;border-radius:24px}}
.a-state .a-ill{display:block;width:200px;height:200px;border-radius:20px;margin:0 auto 20px;object-fit:cover}
