/* budsjett.css — /verktoy/budsjett.

   Egen mal (maler/side-budsjett.html), i samme familie som prioritering.css
   («Tavla», standarden fra 5. september 2026): én hvit flate i full bredde,
   skjemaet til venstre, sammendraget klistret til høyre fra 64rem. Hvite
   felt med blå kant, farge og ikon per gruppe, ett steg om gangen.

   FARGE PER GRUPPE, brukt likt på avkrysningen, søylene, stripen, PDF-en
   og e-posten: inntekt grønn (--ned), bolig marine (--spruce), transport
   (--spruce-3), faste regninger (--ink-2), lån og kreditt (--opp), hverdag
   gull (--rust-dim, mørk tekst), noen ganger i året himmel (--pil-ned,
   mørk tekst). Tonene lages med color-mix fra tokenene.

   Bare tokenene fra pengeguide.css. Mobil først. Inndata 18 px, så iOS
   ikke zoomer. */
.bud{--felt-bg:#fff;--felt-kant:color-mix(in srgb,var(--spruce-3) 70%,#fff);--rad-aapen:color-mix(in srgb,var(--pil-ned) 10%,#fff)}
.bud{margin-inline:auto;padding-block:clamp(1rem,3vw,2rem)}
.bud-hode{margin-bottom:clamp(1.25rem,3vw,2rem);max-width:44rem}
.bud-hode h1{max-width:20ch;text-wrap:balance}
.bud-hode .ingress{max-width:52ch;margin-bottom:0}

/* Gruppefargene */
.bud-g-inntekt,[data-gruppe="inntekt"]{--t:var(--ned);--t-tekst:#fff}
.bud-g-bolig,[data-gruppe="bolig"]{--t:var(--spruce);--t-tekst:#fff}
.bud-g-transport,[data-gruppe="transport"]{--t:var(--spruce-3);--t-tekst:#fff}
.bud-g-fast,[data-gruppe="fast"]{--t:var(--ink-2);--t-tekst:#fff}
.bud-g-gjeld,[data-gruppe="gjeld"]{--t:var(--opp);--t-tekst:#fff}
.bud-g-hverdag,[data-gruppe="hverdag"]{--t:var(--rust-dim);--t-tekst:var(--ink)}
.bud-g-aar,[data-gruppe="aar"]{--t:var(--pil-ned);--t-tekst:var(--ink)}

/* ---------- Fortsett-linja ---------- */
.bud-fortsett{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:1rem;padding:.875rem 1.125rem;border-radius:.875rem;
  background:var(--wash);color:var(--ink)}
.bud-fortsett>span{flex:none;display:grid;place-items:center;inline-size:2.25rem;block-size:2.25rem;border-radius:.625rem;background:var(--fig-hvit);color:var(--spruce)}
.bud-fortsett p{margin:0;flex:1 1 16rem;font-size:var(--tekst-sm);line-height:1.45}
.bud-fortsett>div{display:flex;flex-wrap:wrap;gap:.5rem}

/* ---------- Tavla ---------- */
.bud-tavle{background:var(--fig-hvit);border-radius:1.25rem;border:1px solid var(--rule);
  padding:clamp(1.25rem,3.5vw,2.5rem) clamp(1rem,3.5vw,2.5rem);display:flex;flex-direction:column;gap:clamp(1.5rem,3vw,2rem)}
.bud-skjema{display:contents}
.bud-tavle h2{margin:0 0 .875rem;padding:0;border:0;max-width:none;font-size:var(--tekst-base);letter-spacing:.02em;text-transform:uppercase;
  color:var(--spruce);font-variation-settings:"wdth" 90,"wght" 700}

/* ---------- Steglista ---------- */
.bud-steg-liste{list-style:none;margin:0 0 .25rem;padding:0;display:flex;flex-wrap:wrap;gap:.375rem;grid-area:liste}
.bud-steg-liste li>*{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:.4rem;min-block-size:2.25rem;padding:0 .75rem 0 .3rem;
  border-radius:999px;border:1.5px solid var(--rule);color:var(--muted);font-size:var(--tekst-xs);font-variation-settings:"wdth" 92,"wght" 640;white-space:nowrap}
.bud-steg-liste li>button{cursor:pointer;color:var(--spruce);border-color:color-mix(in srgb,var(--ned) 45%,#fff);background:color-mix(in srgb,var(--ned) 8%,#fff)}
.bud-steg-liste li>button:hover{border-color:var(--spruce)}
.bud-steg-liste li>button:focus-visible{outline:2px solid var(--spruce);outline-offset:2px}
.bud-steg-liste li.er-aktiv>span{color:#fff;background:var(--spruce);border-color:var(--spruce)}
.bud-steg-liste-nr{flex:none;display:grid;place-items:center;inline-size:1.5rem;block-size:1.5rem;border-radius:50%;background:var(--wash);color:var(--spruce);font-size:.6875rem;font-variation-settings:"wdth" 92,"wght" 720}
.bud-steg-liste li.er-aktiv .bud-steg-liste-nr{background:rgba(255,255,255,.18);color:#fff}
.bud-steg-liste li.er-ferdig .bud-steg-liste-nr{background:var(--ned);color:#fff}
.bud-steg-liste-nr svg{inline-size:14px;block-size:14px}
@media(max-width:47.999rem){.bud-steg-liste li:not(.er-aktiv)>*>span:last-child{display:none}.bud-steg-liste li:not(.er-aktiv)>*{padding-right:.3rem}}

/* ---------- Stegene ---------- */
.bud-stegene{grid-area:steg;min-width:0}
.bud-steg{border:0;padding:0;margin:0;min-width:0}
.bud-skjema[data-js] .bud-steg[data-skjult]{display:none}
.bud-skjema:not([data-js]) .bud-steg+.bud-steg{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--rule)}
.bud-skjema:not([data-js]) .bud-knapper,.bud-skjema:not([data-js]) .bud-steg-liste{display:none}
.bud-steg-hode{display:flex;flex-direction:column;gap:.25rem;margin:0 0 .5rem;padding:0;max-width:none}
.bud-steg-hode:focus{outline:0}
.bud-steg-nr{font-size:var(--tekst-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--rust);font-variation-settings:"wdth" 92,"wght" 700}
.bud-steg-sp{font-size:clamp(1.375rem,2.4vw,1.75rem);line-height:1.2;letter-spacing:-.015em;color:var(--ink);font-variation-settings:"wdth" 86,"wght" 740;text-wrap:balance}
.bud-steg-hint{margin:0 0 1.25rem;font-size:var(--tekst-sm);color:var(--ink-2);line-height:1.5;max-width:56ch}
.bud-hint{display:block;margin:.375rem 0 0;font-size:var(--tekst-sm);color:var(--muted);line-height:1.45}
.bud-hint--bred{margin-top:.75rem;max-width:56ch}
.bud-valgfri{margin-inline-start:.35rem;color:var(--muted);font-variation-settings:"wdth" 92,"wght" 420}

/* Store valgkort: eier/leier/hjemme, biler, voksne. */
.bud-valg{margin:0 0 1.25rem}
.bud-valg-label{display:block;margin:0 0 .5rem;font-size:var(--tekst-sm);color:var(--ink-2);font-variation-settings:"wdth" 92,"wght" 620}
.bud-valg-rad{display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,9.5rem),1fr))}
.bud-valgkort{position:relative;display:block;cursor:pointer}
.bud-valgkort input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0}
.bud-valgkort span{display:flex;flex-direction:column;justify-content:center;gap:.1rem;min-block-size:3.75rem;padding:.625rem .875rem;border:1.5px solid var(--felt-kant);border-radius:.75rem;
  background:var(--felt-bg);line-height:1.25;transition:border-color .15s,box-shadow .15s,background-color .15s}
.bud-valgkort b{color:var(--ink);font-size:var(--tekst-base);font-variation-settings:"wdth" 92,"wght" 660}
.bud-valgkort small{color:var(--muted);font-size:var(--tekst-xs)}
.bud-valgkort:hover span{border-color:var(--spruce-3)}
.bud-valgkort input:checked+span{border-color:var(--spruce);box-shadow:0 0 0 1px var(--spruce);background:var(--rad-aapen)}
.bud-valgkort input:checked+span b{color:var(--spruce)}
.bud-valgkort input:focus-visible+span{outline:2px solid var(--spruce);outline-offset:2px}

/* Felt */
.bud-felt{min-width:0}
.bud-felt label{display:block;margin:0 0 .4rem;font-size:var(--tekst-sm);color:var(--ink-2);font-variation-settings:"wdth" 92,"wght" 620}
.bud-felt--kort{max-inline-size:18rem;margin-bottom:1rem}
.bud-inn{display:flex;align-items:center;gap:.5rem;background:var(--felt-bg);border:1.5px solid var(--felt-kant);border-radius:.625rem;padding:0 .875rem;min-block-size:3rem;transition:border-color .15s,box-shadow .15s}
.bud-inn:hover{border-color:var(--spruce-3)}
.bud-inn:focus-within{border-color:var(--spruce);box-shadow:0 0 0 2px var(--spruce)}
.bud-inn input{inline-size:100%;min-width:0;border:0;background:transparent;padding:0;font:inherit;font-size:1.125rem;color:var(--ink);
  font-variation-settings:"wdth" 92,"wght" 620;font-variant-numeric:tabular-nums;appearance:textfield;-moz-appearance:textfield}
.bud-inn input:focus{outline:0}
.bud-inn input::placeholder{color:var(--muted);font-variation-settings:"wdth" 92,"wght" 420}
.bud-enhet{color:var(--muted);font-size:var(--tekst-sm);white-space:nowrap;font-variation-settings:"wdth" 92,"wght" 600}
.bud-select{inline-size:100%;min-block-size:3rem;border:1.5px solid var(--felt-kant);border-radius:.625rem;padding:0 2.75rem 0 .875rem;background-color:var(--felt-bg);color:var(--ink);
  font:inherit;font-size:1.0625rem;font-variation-settings:"wdth" 92,"wght" 620;appearance:none;-webkit-appearance:none;cursor:pointer;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'><path d='M1 1l6 6 6-6' fill='none' stroke='%234a5c6b' stroke-width='2'/></svg>");
  background-repeat:no-repeat;background-position:right .875rem center;transition:box-shadow .15s}
.bud-select:hover{border-color:var(--spruce-3)}
.bud-select:focus-visible{outline:0;border-color:var(--spruce);box-shadow:0 0 0 2px var(--spruce)}
.bud-barn{display:grid;gap:0 1rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,11rem),1fr));max-inline-size:36rem}
.bud-barn .bud-felt{max-inline-size:none}
.bud-barn .bud-felt[hidden]{display:none}

/* Postene: avkrysning som rad, feltene vokser fram under. */
.bud-poster{display:grid;gap:.5rem}
.bud-post{border:1px solid var(--rule);border-radius:.875rem;background:var(--fig-hvit);transition:border-color .15s,box-shadow .15s}
.bud-post[hidden]{display:none}
.bud-post[data-paa]{border-color:var(--spruce);box-shadow:0 0 0 1px var(--spruce);background:var(--rad-aapen)}
.bud-kryss{display:flex;align-items:center;gap:.75rem;min-block-size:3.75rem;padding:.625rem .875rem .625rem .75rem;cursor:pointer;border-radius:.875rem;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.bud-post[data-paa] .bud-kryss{background:var(--fig-hvit);border-radius:.875rem .875rem 0 0}
@media(hover:hover){.bud-post:not([data-paa]) .bud-kryss:hover{background:var(--bg)}}
.bud-kryss input{flex:none;inline-size:1.375rem;block-size:1.375rem;margin:0;accent-color:var(--spruce);cursor:pointer}
.bud-kryss input:focus-visible{outline:2px solid var(--spruce);outline-offset:2px}
.bud-kryss-ikon{flex:none;inline-size:2.25rem;block-size:2.25rem;border-radius:.625rem;display:grid;place-items:center;color:var(--t,var(--muted));background:color-mix(in srgb,var(--t,var(--muted)) 14%,#fff)}
.bud-kryss-ikon svg{inline-size:18px;block-size:18px}
.bud-kryss-navn{display:flex;flex-direction:column;min-width:0;flex:1 1 auto;line-height:1.3}
.bud-kryss-navn b{color:var(--ink);font-size:var(--tekst-base);font-variation-settings:"wdth" 92,"wght" 660}
.bud-kryss-navn small{font-size:var(--tekst-xs);color:var(--muted)}
.bud-kryss-sum{flex:none;color:var(--spruce);font-size:var(--tekst-sm);font-variation-settings:"wdth" 90,"wght" 720;font-variant-numeric:tabular-nums;white-space:nowrap}
.bud-kryss-sum:empty{display:none}
.bud-post-felt{display:none;gap:.75rem 1rem;padding:.875rem 1rem 1rem;border-top:1px solid var(--rule)}
.bud-post[data-paa] .bud-post-felt{display:grid}
.bud-skjema:not([data-js]) .bud-post-felt{display:grid}
.bud-post-felt .bud-felt--navn{grid-column:1 / -1}
.bud-post-felt .bud-hint,.bud-post-felt .bud-sifo,.bud-post-felt .bud-mer,.bud-post-felt .bud-mnd{grid-column:1 / -1}
.bud-post-felt .bud-hint{margin-top:0}

/* Per måned / per år */
.bud-periode{display:inline-flex;align-self:end;border:1.5px solid var(--felt-kant);border-radius:.625rem;overflow:hidden;background:var(--felt-bg)}
.bud-periode label{position:relative;cursor:pointer}
.bud-periode input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.bud-periode span{display:flex;align-items:center;min-block-size:calc(3rem - 3px);padding:0 .875rem;font-size:var(--tekst-sm);color:var(--ink-2);font-variation-settings:"wdth" 92,"wght" 620;white-space:nowrap}
.bud-periode input:checked+span{background:var(--spruce);color:#fff}
.bud-periode input:focus-visible+span{outline:2px solid var(--spruce);outline-offset:-2px}

/* Månedene */
.bud-mnd-label{display:block;margin:0 0 .4rem;font-size:var(--tekst-sm);color:var(--ink-2);font-variation-settings:"wdth" 92,"wght" 620}
.bud-mnd-rad{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.3rem;max-inline-size:26rem}
.bud-mnd-knapp{position:relative;cursor:pointer}
.bud-mnd-knapp input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.bud-mnd-knapp span{display:grid;place-items:center;min-block-size:2.25rem;border:1.5px solid var(--felt-kant);border-radius:.5rem;background:var(--felt-bg);font-size:var(--tekst-xs);color:var(--ink-2);font-variation-settings:"wdth" 92,"wght" 640;text-transform:capitalize}
.bud-mnd-knapp input:checked+span{background:var(--spruce);border-color:var(--spruce);color:#fff}
.bud-mnd-knapp input:focus-visible+span{outline:2px solid var(--spruce);outline-offset:2px}
@media(min-width:40rem){.bud-mnd-rad{grid-template-columns:repeat(12,minmax(0,1fr));max-inline-size:none}}

/* Feriepenger og halv skatt: to felt under lønnen, alltid synlige. */
.bud-topper{grid-column:1 / -1;display:grid;gap:.5rem 1rem;padding-top:.5rem;border-top:1px dashed var(--rule)}
.bud-topper-h{grid-column:1 / -1;margin:0;font-size:var(--tekst-sm);color:var(--ink-2);font-variation-settings:"wdth" 92,"wght" 640}
.bud-topper .bud-hint{grid-column:1 / -1;margin-top:0}
@media(min-width:40rem){.bud-topper{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Mer (feriepenger) */
.bud-mer{font-size:var(--tekst-sm)}
.bud-mer summary{list-style:none;display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;min-block-size:2rem;color:var(--spruce);font-variation-settings:"wdth" 92,"wght" 640;-webkit-tap-highlight-color:transparent}
.bud-mer summary::-webkit-details-marker{display:none}
.bud-mer summary::after{content:"";inline-size:.4rem;block-size:.4rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-.1rem) rotate(45deg);transition:transform .2s}
.bud-mer[open] summary::after{transform:translateY(.1rem) rotate(-135deg)}
.bud-mer-inn{display:grid;gap:.75rem 1rem;margin-top:.5rem}
@media(min-width:40rem){.bud-mer-inn{grid-template-columns:repeat(2,minmax(0,1fr))}.bud-mer-inn .bud-hint{grid-column:1 / -1}}

/* SIFO-setningen */
.bud-sifo{margin:0;padding:.625rem .875rem;border-radius:.625rem;background:color-mix(in srgb,var(--rust-dim) 16%,#fff);border-left:3px solid var(--rust-dim);font-size:var(--tekst-sm);color:var(--ink);line-height:1.5}
.bud-sifo b{font-variation-settings:"wdth" 92,"wght" 700;font-variant-numeric:tabular-nums}
.bud-sifo a{color:var(--spruce)}

.bud-lenkeknapp{all:unset;cursor:pointer;color:var(--spruce);text-decoration:underline;text-underline-offset:.15em;font-variation-settings:"wdth" 92,"wght" 640}
.bud-lenkeknapp:focus-visible{outline:2px solid var(--spruce);outline-offset:2px;border-radius:.25rem}
.bud-info{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;inline-size:2rem;block-size:2rem;border-radius:50%;color:var(--spruce-3)}
.bud-fjern{all:unset;box-sizing:border-box;cursor:pointer;justify-self:start;display:inline-flex;align-items:center;gap:.4rem;min-block-size:2.5rem;padding:0 .75rem 0 .5rem;border-radius:.625rem;
  font-size:var(--tekst-sm);color:var(--opp);font-variation-settings:"wdth" 92,"wght" 620}
.bud-fjern:hover{background:color-mix(in srgb,var(--opp) 10%,#fff)}
.bud-fjern:focus-visible{outline:2px solid var(--spruce);outline-offset:2px}
.bud-legg{inline-size:100%;margin-top:.75rem;min-block-size:3rem;border:2px dashed var(--rule-2);border-radius:.875rem;background:transparent;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;
  color:var(--spruce);font:inherit;font-size:var(--tekst-sm);font-variation-settings:"wdth" 92,"wght" 660;cursor:pointer;touch-action:manipulation;transition:border-color .15s,background-color .15s}
.bud-legg:hover{border-color:var(--spruce);background:var(--bg)}
.bud-legg:focus-visible{outline:2px solid var(--spruce);outline-offset:2px}

/* Knappene under steget */
.bud-knapper{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--rule)}
.bud-tilbake,.bud-videre{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;min-block-size:3.25rem;padding:0 1.25rem;border-radius:.875rem;
  font-size:var(--tekst-base);font-variation-settings:"wdth" 92,"wght" 660;touch-action:manipulation;transition:background-color .15s,border-color .15s}
.bud-tilbake{color:var(--spruce);border:1.5px solid var(--felt-kant);background:var(--fig-hvit);padding-left:.875rem}
.bud-tilbake:hover{border-color:var(--spruce)}
.bud-videre{background:var(--spruce);color:#fff;padding-right:1rem}
.bud-videre:hover{background:var(--spruce-2)}
.bud-tilbake:focus-visible,.bud-videre:focus-visible{outline:2px solid var(--spruce);outline-offset:2px}
.bud-knapper svg{flex:none;inline-size:18px;block-size:18px}
@media(max-width:39.999rem){.bud-videre{flex:1 1 auto;justify-content:center}}

/* ---------- Sammendraget ---------- */
.bud-spor{grid-area:svar;align-self:stretch;min-width:0}
.bud-sammendrag{scroll-margin-top:4.5rem}
.bud-svar-tittel{margin:0 0 .25rem}
.bud-svar-under{margin:0 0 .875rem;font-size:var(--tekst-sm);color:var(--ink-2)}
.bud-tall-rad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}
.bud-tall{padding:.75rem .875rem;border-radius:.75rem;background:var(--wash);display:flex;flex-direction:column;gap:.15rem;min-width:0}
.bud-tall-l{font-size:var(--tekst-xs);color:var(--ink-2);letter-spacing:.03em;text-transform:uppercase;font-variation-settings:"wdth" 92,"wght" 640}
.bud-tall b{color:var(--ink);font-size:clamp(1rem,1.6vw,1.25rem);letter-spacing:-.01em;font-variation-settings:"wdth" 86,"wght" 760;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bud-tall.er-pluss{background:color-mix(in srgb,var(--ned) 12%,#fff)}
.bud-tall.er-pluss b{color:var(--ned)}
.bud-tall.er-minus{background:color-mix(in srgb,var(--opp) 10%,#fff)}
.bud-tall.er-minus b{color:var(--opp)}
.bud-mini{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:3px;block-size:4.5rem;margin:1rem 0 .25rem;align-items:end}
.bud-mini-m{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;block-size:100%;gap:.2rem}
.bud-mini-m i{display:block;inline-size:100%;border-radius:3px 3px 0 0;background:var(--ned);min-block-size:3px}
.bud-mini-m.er-minus i{background:var(--opp)}
.bud-mini-m b{font-size:.625rem;color:var(--muted);font-variation-settings:"wdth" 92,"wght" 640;line-height:1}
.bud-minus-linje{margin:.75rem 0 0;font-size:var(--tekst-sm);color:var(--opp);font-variation-settings:"wdth" 92,"wght" 660}
.bud-minus-linje--ok{color:var(--ned)}
.bud-avsetning-linje{margin:.5rem 0 0;font-size:var(--tekst-sm);color:var(--ink-2);line-height:1.5}
.bud-avsetning-linje b{color:var(--ink);font-variation-settings:"wdth" 92,"wght" 700}
.bud-sammendrag-knapper{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--rule)}

/* Knapper som i prioriteringen */
.bud-handling{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;min-block-size:2.75rem;padding:0 1rem 0 .75rem;
  border:1.5px solid var(--felt-kant);border-radius:.625rem;background:var(--fig-hvit);color:var(--spruce);font-size:var(--tekst-sm);
  font-variation-settings:"wdth" 92,"wght" 660;transition:border-color .15s,background-color .15s;touch-action:manipulation}
.bud-handling svg{flex:none;inline-size:18px;block-size:18px}
.bud-handling:hover{border-color:var(--spruce);background:color-mix(in srgb,var(--spruce-3) 6%,#fff)}
.bud-handling:focus-visible{outline:2px solid var(--spruce);outline-offset:2px}
.bud-handling--primar{background:var(--spruce);border-color:var(--spruce);color:#fff}
.bud-handling--primar:hover{background:var(--spruce-2);border-color:var(--spruce-2)}
.bud-handlinger{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--rule)}
.bud-handling-note{flex-basis:100%;margin:.25rem 0 0;font-size:var(--tekst-xs);color:var(--muted);line-height:1.45}

/* ---------- Budsjettet (steg ni) ---------- */
.bud-svar-h{margin:0 0 .5rem;padding:0;border:0;font-size:clamp(1.375rem,2.4vw,1.75rem);line-height:1.2;letter-spacing:-.015em;color:var(--ink);text-transform:none;font-variation-settings:"wdth" 86,"wght" 740;max-width:none}
.bud-svar-h:focus{outline:0}
.bud-svar-ingress{margin:0 0 1.25rem;font-size:var(--tekst-base);color:var(--ink-2);line-height:1.5;max-width:56ch}
.bud-svar-ingress b{color:var(--ink);font-variation-settings:"wdth" 92,"wght" 700;font-variant-numeric:tabular-nums}
.bud-svar-tom{margin:0;font-size:var(--tekst-sm);color:var(--muted)}
.bud-graf{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:4px;block-size:9rem;align-items:end;margin:0 0 .25rem}
.bud-graf-m{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;block-size:100%;gap:.3rem;min-width:0}
.bud-graf-soyler{display:flex;align-items:flex-end;gap:2px;inline-size:100%;block-size:100%}
.bud-graf-soyler i{flex:1 1 0;display:block;border-radius:3px 3px 0 0;min-block-size:2px}
.bud-graf-inn{background:var(--ned)}
.bud-graf-ut{background:var(--spruce)}
.bud-graf-m.er-minus .bud-graf-ut{background:var(--opp)}
.bud-graf-m b{font-size:.6875rem;color:var(--muted);font-variation-settings:"wdth" 92,"wght" 640;line-height:1;text-transform:capitalize}
.bud-graf-m.er-minus b{color:var(--opp)}
.bud-graf-forklaring{display:flex;gap:1rem;margin:0 0 1.25rem;font-size:var(--tekst-xs);color:var(--ink-2)}
.bud-graf-forklaring span{display:inline-flex;align-items:center;gap:.35rem}
.bud-graf-forklaring span::before{content:"";inline-size:.75rem;block-size:.75rem;border-radius:3px;background:var(--ned)}
.bud-graf-ut-p::before{background:var(--spruce)!important}
@media(max-width:39.999rem){.bud-graf-m b{font-size:.5625rem}}

.bud-boks{margin:0 0 1rem;padding:1rem 1.125rem;border-radius:.875rem}
.bud-boks--varsel{background:rgba(234,169,63,.16);border:1px solid var(--rust-dim)}
.bud-boks--ok{background:color-mix(in srgb,var(--ned) 10%,#fff)}
.bud-boks h3{margin:0 0 .5rem;color:var(--ink);font-size:var(--tekst-base);line-height:1.25;font-variation-settings:"wdth" 90,"wght" 700}
.bud-boks p,.bud-boks li{font-size:var(--tekst-sm);line-height:1.5;color:var(--ink-2)}
.bud-boks p{margin:.5rem 0 0}
.bud-boks ul{margin:0;padding-left:1.1rem}
.bud-boks li{margin:0 0 .3rem}
.bud-boks b{color:var(--ink);font-variation-settings:"wdth" 92,"wght" 700}
.bud-boks a{color:var(--spruce)}

/* Tabellene, lukket med en rad som ser ut som en knapp */
.bud-tabell{font-size:var(--tekst-sm);margin:0 0 .75rem}
.bud-tabell summary{list-style:none;display:flex;align-items:center;gap:.875rem;padding:.75rem 1rem;cursor:pointer;min-block-size:3.25rem;border:1.5px solid var(--felt-kant);border-radius:.875rem;background:var(--fig-hvit);
  transition:border-color .15s,background-color .15s;-webkit-tap-highlight-color:transparent;touch-action:manipulation;color:var(--spruce)}
.bud-tabell summary::-webkit-details-marker{display:none}
.bud-tabell summary:hover{border-color:var(--spruce);background:color-mix(in srgb,var(--spruce-3) 5%,#fff)}
.bud-tabell summary:focus-visible{outline:2px solid var(--spruce);outline-offset:2px}
.bud-tabell[open] summary{border-radius:.875rem .875rem 0 0;border-bottom-color:var(--rule)}
.bud-tabell-tekst{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;line-height:1.3}
.bud-tabell-tekst b{color:var(--ink);font-size:var(--tekst-base);font-variation-settings:"wdth" 92,"wght" 680}
.bud-tabell-tekst span{font-size:var(--tekst-sm);color:var(--ink-2);font-variation-settings:"wdth" 92,"wght" 420}
.bud-tabell-vis{flex:none;display:inline-flex;align-items:center;gap:.4rem;color:var(--spruce);font-size:var(--tekst-sm);white-space:nowrap}
.bud-tabell-vis svg{transition:transform .2s}
.bud-tabell[open] .bud-tabell-vis svg{transform:rotate(180deg)}
.bud-tabell-inn{border:1.5px solid var(--felt-kant);border-top:0;border-radius:0 0 .875rem .875rem;padding:.25rem 1rem .75rem;overflow-x:auto}
.bud-tabell table{inline-size:100%;border-collapse:collapse;margin-top:.25rem}
.bud-tabell th{text-align:left;padding:.5rem .75rem .5rem 0;border-bottom:2px solid var(--rule);color:var(--ink-2);font-size:var(--tekst-xs);letter-spacing:.03em;text-transform:uppercase;font-variation-settings:"wdth" 92,"wght" 640;white-space:nowrap}
.bud-tabell tbody th{text-transform:none;letter-spacing:0;font-size:var(--tekst-sm);color:var(--ink);border-bottom:1px solid var(--rule);font-variation-settings:"wdth" 92,"wght" 640}
.bud-tabell td{padding:.55rem .75rem .55rem 0;border-bottom:1px solid var(--rule);color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.bud-tabell th:not(:first-child){text-align:right}
.bud-tabell td:last-child,.bud-tabell th:last-child{padding-right:0}
.bud-tabell td b{font-variation-settings:"wdth" 92,"wght" 700}
.bud-tabell tr.er-minus td b{color:var(--opp)}
.bud-tabell tr.er-minus th{color:var(--opp)}
.bud-tabell-sum th,.bud-tabell-sum td{border-top:2px solid var(--rule);border-bottom:0;font-variation-settings:"wdth" 92,"wght" 700}
.bud-tabell-gruppe th{padding-top:.875rem;color:var(--t,var(--spruce));border-bottom:1px solid var(--rule)}
.bud-tabell--poster td:first-child{text-align:left;white-space:normal}
.bud-tabell--poster td.bud-naar{text-align:left;color:var(--ink-2);font-size:var(--tekst-xs);white-space:normal;min-inline-size:6rem}
@media(max-width:39.999rem){.bud-tabell-vis span{display:none}.bud-tabell-tekst span{display:none}}
/* Postetabellen på mobil: navnet på egen linje i full bredde, tallene under
   med ledetekst. Første utgave hadde fire kolonner på 390 px, og «Barnebidrag
   du mottar» brakk til seks linjer (Khurram 5. september 2026, skjermbilde). */
@media(max-width:39.999rem){
  .bud-tabell--poster thead{display:none}
  .bud-tabell--poster table,.bud-tabell--poster tbody{display:block}
  .bud-tabell--poster tr{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.2rem .5rem;padding:.625rem 0;border-bottom:1px solid var(--rule)}
  .bud-tabell--poster tr.bud-tabell-gruppe{display:block;padding:.875rem 0 .25rem}
  .bud-tabell--poster td,.bud-tabell--poster tbody th{display:block;padding:0;border:0;white-space:normal;text-align:left}
  .bud-tabell--poster td.bud-postnavn{grid-column:1 / -1;color:var(--ink);font-variation-settings:"wdth" 92,"wght" 660}
  .bud-tabell--poster td::before{content:attr(data-l);display:block;font-size:var(--tekst-xs);color:var(--ink-2);letter-spacing:.04em;text-transform:uppercase;margin-bottom:.1rem}
  .bud-tabell--poster td.bud-postnavn::before{display:none}
  .bud-tabell--poster td.bud-naar{min-inline-size:0}
}

/* Hvor pengene går: stripe og liste */
.bud-fordeling{margin:0 0 1rem}
.bud-fordeling h3{margin:0 0 .625rem;font-size:var(--tekst-base);color:var(--ink);font-variation-settings:"wdth" 90,"wght" 700}
.bud-stripe{display:flex;gap:3px;block-size:1.25rem;border-radius:.5rem;overflow:hidden;margin:0 0 .625rem}
.bud-seg{flex:1 1 0;min-inline-size:.5rem;border-radius:.3rem;background:var(--t,var(--rule-2))}
.bud-fordeling-liste{list-style:none;margin:0;padding:0;display:grid;gap:.3rem .75rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,14rem),1fr))}
.bud-fordeling-liste li{display:flex;align-items:center;gap:.5rem;font-size:var(--tekst-sm);color:var(--ink-2);min-width:0}
.bud-fordeling-liste li span:not(.bud-prikk){flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bud-fordeling-liste b{color:var(--ink);font-variation-settings:"wdth" 92,"wght" 700;font-variant-numeric:tabular-nums;white-space:nowrap}
.bud-fordeling-liste small{color:var(--muted);font-variant-numeric:tabular-nums;min-inline-size:2.5rem;text-align:right}
.bud-prikk{flex:none;inline-size:.75rem;block-size:.75rem;border-radius:3px;background:var(--t,var(--rule-2))}
.bud-endre{margin:1rem 0 0;font-size:var(--tekst-sm);color:var(--ink-2);line-height:1.5}

/* ---------- «Se tallene», bare på mobil ---------- */
.bud-hopp{position:fixed;left:50%;bottom:max(1rem,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:var(--z-sticky);display:inline-flex;align-items:center;gap:.5rem;
  padding:.8rem 1.25rem;border-radius:999px;background:var(--spruce);color:#fff;text-decoration:none;font-size:var(--tekst-sm);font-variation-settings:"wdth" 92,"wght" 660;box-shadow:0 8px 24px rgba(14,28,40,.28);touch-action:manipulation}
.bud-hopp[hidden]{display:none}
.bud-hopp:focus-visible{outline:2px solid var(--rust-dim);outline-offset:2px}
@media(min-width:64rem){.bud-hopp{display:none}}

/* ---------- Brødtekst og høyrespalte ---------- */
.bud-nedre{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(1.5rem,3vw,2.5rem);margin-top:var(--luft-seksjon)}
.bud-brod{max-width:44rem}
.bud-spalte{display:block;min-width:0}
@media(min-width:80rem){.bud-nedre{grid-template-columns:minmax(0,1fr) 18.75rem}}
@media(max-width:79.999rem){.bud-spalte .ad-slot--rail{min-height:250px}}
.bud-brod .bud-steg-tekst{padding-left:1.25rem}
.bud-brod .bud-steg-tekst li{margin-bottom:.625rem}
.bud-refi{margin:1rem 0 .5rem}
/* Lånekalkulatoren øverst i brødteksten, rett under tavla: luft ned mot
   «Kort fortalt», ingen ekstra luft opp (.bud-nedre har den). */
.bud-refi--topp{margin:0 0 var(--luft-seksjon)}
.bud-refi[hidden]{display:none}
.bud-kilder{margin-top:var(--luft-seksjon);border-top:1px solid var(--rule);padding-top:1rem}
.bud-kilder summary{list-style:none;display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;cursor:pointer;min-block-size:2.75rem;padding:.5rem 0;-webkit-tap-highlight-color:transparent}
.bud-kilder summary::-webkit-details-marker{display:none}
.bud-kilder summary::before{content:"";flex:none;inline-size:.5rem;block-size:.5rem;align-self:center;margin-inline-end:.25rem;border-right:2px solid var(--spruce);border-bottom:2px solid var(--spruce);transform:rotate(-45deg);transition:transform .2s}
.bud-kilder[open] summary::before{transform:rotate(45deg)}
.bud-kilder summary:focus-visible{outline:2px solid var(--spruce);outline-offset:2px;border-radius:.25rem}
.bud-kilder-h{font-size:var(--tekst-base);color:var(--spruce);font-variation-settings:"wdth" 90,"wght" 700;letter-spacing:.02em;text-transform:uppercase}
.bud-kilder-u{font-size:var(--tekst-sm);color:var(--ink-2)}
.bud-kilder .kilder{margin:.75rem 0 0;padding:0;border:0;list-style:none;display:grid;gap:.75rem 1.5rem;font-size:var(--tekst-sm);line-height:1.5;color:var(--ink-2)}
.bud-kilder .kilder a{color:var(--spruce);font-variation-settings:"wdth" 92,"wght" 640}
@media(min-width:48rem){.bud-kilder .kilder{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Lenkekortene nederst, som på prioriteringen */
.bud .relatert{margin-top:var(--luft-seksjon);margin-bottom:var(--luft-seksjon)}
.bud .relatert h2{font-size:var(--tekst-lg)}
.bud .relatert ul{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr));grid-auto-rows:1fr}
.bud .relatert li{margin:0}
.bud .relatert a{display:flex;flex-direction:column;justify-content:center;gap:.15rem;block-size:100%;min-block-size:4rem;padding:.625rem .875rem;border:1px solid var(--rule);border-radius:.75rem;background:var(--fig-hvit);text-decoration:none;color:var(--ink);line-height:1.3;transition:border-color .15s,background-color .15s}
.bud .relatert a:hover{border-color:var(--spruce-3);background:color-mix(in srgb,var(--spruce-3) 5%,#fff)}
.bud .relatert a:focus-visible{outline:2px solid var(--spruce);outline-offset:2px}
.bud .relatert .n{font-size:var(--tekst-sm);color:var(--spruce);font-variation-settings:"wdth" 92,"wght" 680;text-decoration:none}
.bud .relatert .o{display:block;font-size:var(--tekst-xs);color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}
@media(max-width:39.999rem){.bud .relatert ul{grid-template-columns:repeat(2,minmax(0,1fr))}.bud .relatert .o{display:none}.bud .relatert a{min-block-size:2.75rem;padding:.5rem .625rem}.bud .relatert a .n{font-size:var(--tekst-sm)}}

/* ---------- Dialogene ---------- */
.bud-dialog{inline-size:min(34rem,calc(100vw - 2rem));max-block-size:calc(100vh - 2rem);margin:auto;padding:clamp(1.375rem,3vw,1.75rem) clamp(1.125rem,3vw,1.875rem);border:0;border-radius:.875rem;
  background:var(--wash);color:var(--ink);box-shadow:0 24px 64px rgba(14,28,40,.28);overflow:hidden auto}
.bud-dialog::backdrop{background:rgba(14,28,40,.45);backdrop-filter:blur(2px)}
.bud-dialog h2{font-size:var(--tekst-lg);letter-spacing:-.015em;text-transform:none;font-variation-settings:"wdth" 84,"wght" 760;margin:0 2.5rem .5rem 0;color:var(--spruce);max-width:none;line-height:1.2;padding:0;border:0}
.bud-dialog-ingress{margin:0 0 1rem;font-size:var(--tekst-sm);color:var(--ink-2);line-height:1.5}
.bud-dialog-lukk{all:unset;box-sizing:border-box;cursor:pointer;position:absolute;top:.75rem;right:.75rem;z-index:2;display:grid;place-items:center;inline-size:2.5rem;block-size:2.5rem;border-radius:50%;color:var(--ink-2)}
.bud-dialog-lukk:hover{background:rgba(14,28,40,.08)}
.bud-dialog-lukk:focus-visible{outline:2px solid var(--spruce);outline-offset:2px}
.bud-dialog .bud-inn{background:var(--fig-hvit)}
.bud-epost-inn[hidden],.bud-epost-takk[hidden]{display:none}
.bud-epost-inn>label:not(.bud-kryss-tips){display:block;margin:0 0 .4rem;font-size:var(--tekst-sm);color:var(--ink-2);font-variation-settings:"wdth" 92,"wght" 620}
.bud-epost-rad{display:flex;gap:.5rem;align-items:stretch}
.bud-epost-rad .bud-inn{flex:1 1 auto;min-width:0}
.bud-epost-send{all:unset;box-sizing:border-box;cursor:pointer;flex:none;display:inline-flex;align-items:center;gap:.4rem;padding:0 1.125rem;min-block-size:3rem;border-radius:.625rem;background:var(--spruce);color:#fff;font-size:var(--tekst-sm);font-variation-settings:"wdth" 92,"wght" 660}
.bud-epost-send svg{inline-size:18px;block-size:18px}
.bud-epost-send:hover{background:var(--spruce-2)}
.bud-epost-send:focus-visible{outline:2px solid var(--spruce);outline-offset:2px}
.bud-honning{position:absolute;left:-9999px;inline-size:1px;block-size:1px;opacity:0}
.bud-kryss-tips{display:flex;gap:.625rem;align-items:flex-start;margin:.875rem 0 0;font-size:var(--tekst-sm);color:var(--ink);line-height:1.45;cursor:pointer}
.bud-kryss-tips input{flex:none;inline-size:1.25rem;block-size:1.25rem;margin:.1rem 0 0;accent-color:var(--spruce)}
.bud-turnstile{margin-top:.75rem}
.bud-turnstile:empty{display:none}
.bud-epost-note,.bud-epost-status{margin:.75rem 0 0;font-size:var(--tekst-xs);color:var(--ink-2);line-height:1.45}
.bud-epost-status{color:var(--ink);font-size:var(--tekst-sm);font-variation-settings:"wdth" 92,"wght" 620}
.bud-epost-status:empty{display:none}
.bud-epost-takk{text-align:center;padding:.5rem 0 .25rem}
.bud-takk-ikon{display:inline-grid;place-items:center;inline-size:3.5rem;block-size:3.5rem;border-radius:50%;background:var(--ned);color:#fff;margin-bottom:.75rem}
.bud-takk-h{margin:0 0 .5rem;font-size:var(--tekst-lg);color:var(--spruce);letter-spacing:-.015em;font-variation-settings:"wdth" 84,"wght" 760}
.bud-takk-tekst{margin:0 auto .5rem;max-width:34ch;font-size:var(--tekst-sm);color:var(--ink-2);line-height:1.5}
.bud-takk-tekst b{color:var(--ink);font-variation-settings:"wdth" 92,"wght" 680;overflow-wrap:anywhere}
.bud-takk-knapper{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1rem}
.bud-del-rad{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}
.bud-del-lenke{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;min-block-size:2.5rem;padding:0 .875rem;border:1.5px solid var(--felt-kant);border-radius:999px;background:var(--fig-hvit);color:var(--spruce);font-size:var(--tekst-sm);font-variation-settings:"wdth" 92,"wght" 640;text-decoration:none}
.bud-del-lenke svg{inline-size:16px;block-size:16px}
.bud-del-lenke:hover{border-color:var(--spruce);background:color-mix(in srgb,var(--spruce-3) 6%,#fff)}
.bud-del-lenke:focus-visible{outline:2px solid var(--spruce);outline-offset:2px}
@media(max-width:39.999rem){
  .bud-dialog{inline-size:100vw;max-inline-size:none;max-block-size:92vh;margin:auto 0 0;border-radius:1rem 1rem 0 0;padding-bottom:max(1.5rem,env(safe-area-inset-bottom))}
  .bud-handling{flex:1 1 100%;justify-content:center}
  .bud-sammendrag-knapper .bud-handling{flex:1 1 auto}
}

/* ---------- Fra 40rem: to felt ved siden av hverandre ---------- */
@media(min-width:40rem){
  .bud-post-felt{grid-template-columns:minmax(0,1fr) auto}
  .bud-post-felt .bud-felt--termin{grid-column:1 / -1;max-inline-size:22rem}
}
/* ---------- Fra 64rem: tavla i to spalter ---------- */
@media(min-width:64rem){
  .bud-tavle{display:grid;grid-template-columns:minmax(0,11fr) minmax(0,8fr);grid-template-areas:"liste liste" "steg svar";column-gap:clamp(2rem,4vw,3.5rem);row-gap:clamp(1.25rem,2.5vw,1.75rem);align-items:start}
  .bud-sammendrag{position:sticky;top:1.25rem}
}
@media(prefers-reduced-motion:reduce){
  .bud-post,.bud-inn,.bud-legg,.bud-valgkort span,.bud-tabell-vis svg,.bud-mer summary::after{transition:none}
}

/* ---------- Utskrift ---------- */
@media print{
  @page{margin:15mm}
  header,nav,footer,.bud-hopp,.bud-handlinger,.bud-brod,.relatert,.bud-knapper,.bud-steg-liste,.bud-sammendrag-knapper,.bud-fortsett,.samtykke,[class*="silktide"],[id*="silktide"],.ad-slot,.ad-anchor{display:none!important}
  body{background:#fff;color:#000}
  .bud-tavle{display:block;border:0;padding:0}
  .bud-skjema[data-js] .bud-steg[data-skjult]{display:none}
  .bud-tabell summary{display:none}
}
