/* VIRAINE – returportalen 2026-10-10 (inc/retur.php, retur.js) */
.vr{max-width:34rem;margin:0 0 2.5rem}
.vr-h{font-family:var(--serif);font-weight:400;font-size:clamp(1.75rem,6vw,2.25rem);line-height:1.1;margin:.25rem 0 .6rem}
.vr-lede{color:var(--muted);margin:0 0 1.25rem;line-height:1.55}
.vr-not{font-size:var(--t-sm);color:var(--muted);line-height:1.55;margin:1rem 0 0}
.vr-fel{margin:0 0 1rem;padding:.75rem .9rem;border:1px solid var(--cherry);color:var(--cherry);font-size:var(--t-sm)}
.vr-ok{margin:0 0 1rem;padding:.75rem .9rem;border:1px solid var(--line);font-size:var(--t-sm)}
.vr-sok{display:grid;gap:.95rem;max-width:26rem}
.vr-falt{display:grid;gap:.35rem;font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.vr-falt .v-input{width:100%;min-height:52px;text-transform:none;letter-spacing:normal;font-size:1rem;color:var(--ink)}
.vr-btn{width:100%;min-height:54px;margin-top:1.25rem;justify-content:center}
.vr-sok .vr-btn{margin-top:.25rem}
.vr-steginfo{display:flex;justify-content:space-between;font-size:var(--t-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 .5rem}
.vr-guide.is-js .vr-steg{display:none}
.vr-guide.is-js .vr-steg.is-aktiv{display:block;animation:vrIn .25s var(--ease,ease)}
@keyframes vrIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.vr-guide:not(.is-js) .vr-steg+.vr-steg{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--line)}
.vr-tillbaka{background:none;border:0;padding:.75rem 0;min-height:44px;font:inherit;font-size:var(--t-sm);color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:3px}

/* Steg 1: plaggen */
.vr-plagg{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.vr-plagg__kort{position:relative;display:grid;grid-template-columns:72px 1fr 28px;gap:.9rem;align-items:center;padding:.6rem .9rem .6rem .6rem;border:1px solid var(--line);background:var(--surface);cursor:pointer;transition:border-color .2s}
.vr-plagg__kort input{position:absolute;opacity:0;pointer-events:none}
.vr-plagg__kort img,.vr-plagg__tom{width:72px;height:96px;object-fit:cover;background:var(--bg);display:block}
.vr-plagg__txt{display:grid;gap:.2rem;min-width:0}
.vr-plagg__namn{font-family:var(--serif);font-size:1.3rem;line-height:1.15}
.vr-plagg__var{font-size:var(--t-sm);color:var(--muted)}
.vr-bock{width:24px;height:24px;border:1px solid var(--ink);border-radius:50%;justify-self:end;position:relative}
.vr-plagg__kort:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.vr-plagg__kort input:checked~.vr-bock{background:var(--ink)}
.vr-plagg__kort input:checked~.vr-bock::after{content:"";position:absolute;left:8px;top:4px;width:6px;height:11px;border:solid var(--bg);border-width:0 2px 2px 0;transform:rotate(45deg)}
.vr-plagg__kort input:focus-visible~.vr-bock{outline:2px solid var(--ink);outline-offset:3px}
.vr-plagg__kort.is-av{opacity:.5;cursor:not-allowed}
.vr-antal{display:flex;gap:.6rem;align-items:center;font-size:var(--t-sm);padding:.5rem .6rem 0;color:var(--muted)}
.vr-antal select{min-height:40px;padding:0 .5rem;border:1px solid var(--line);background:var(--surface);font:inherit}

/* Steg 2: skäl */
.vr-skal{border:0;padding:0;margin:0 0 1.6rem}
.vr-skal legend{font-family:var(--serif);font-size:1.3rem;margin:0 0 .6rem;padding:0}
.vr-skal legend span{font-family:var(--sans);font-size:var(--t-sm);color:var(--muted)}
.vr-chips{display:flex;flex-wrap:wrap;gap:.5rem}
.vr-chip input{position:absolute;opacity:0;pointer-events:none}
.vr-chip span{display:inline-flex;align-items:center;min-height:44px;padding:0 1rem;border:1px solid var(--line);border-radius:999px;font-size:var(--t-sm);cursor:pointer;background:var(--surface);transition:background .2s,color .2s}
.vr-chip input:checked+span{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.vr-chip input:focus-visible+span{outline:2px solid var(--ink);outline-offset:2px}
.vr-annat{display:block;margin-top:.6rem}
.vr-annat textarea{width:100%;min-height:64px;font:inherit;font-size:1rem;resize:vertical}
.vr-hygien{margin:.8rem 0 0;padding:.75rem .9rem;background:var(--surface);border-left:2px solid var(--ink);font-size:var(--t-sm);line-height:1.55}

/* Steg 3: val */
.vr-val{display:grid;gap:.7rem}
.vr-valkort{position:relative;display:grid;gap:.3rem;padding:1.1rem 1.2rem;border:1px solid var(--line);background:var(--surface);cursor:pointer}
.vr-valkort input{position:absolute;opacity:0;pointer-events:none}
.vr-valkort:has(input:checked){border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.vr-valkort:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:3px}
.vr-valkort__rub{font-size:var(--t-xs);letter-spacing:.14em;text-transform:uppercase}
.vr-valkort__rub em{font-style:normal;margin-left:.4em;padding:.15em .5em;background:var(--ink);color:var(--bg);letter-spacing:.08em}
.vr-valkort__belopp{font-family:var(--serif);font-size:2.1rem;line-height:1.1;font-variant-numeric:tabular-nums}
.vr-valkort__txt{font-size:var(--t-sm);color:var(--muted);line-height:1.5}

/* Steg 4 + kvitto */
.vr-summa{margin:0 0 1.25rem}
.vr-summa div{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line)}
.vr-summa div:first-child{border-top:1px solid var(--line)}
.vr-summa dt{font-size:var(--t-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);flex:none}
.vr-summa dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}
.vr-kryss{display:grid;gap:.5rem}
.vr-kryss label{display:flex;gap:.8rem;align-items:center;min-height:48px;padding:.5rem .8rem;border:1px solid var(--line);background:var(--surface);cursor:pointer;font-size:var(--t-sm)}
.vr-kryss label[hidden]{display:none}
.vr-kryss input{width:22px;height:22px;flex:none;accent-color:var(--ink)}
.vr-kvitto,.vr-kort--info{padding:1.5rem 1.3rem;border:1px solid var(--line);background:var(--surface)}
.vr-nummer{font-family:var(--serif);font-size:clamp(2.4rem,11vw,3.2rem);line-height:1;margin:.2rem 0 .8rem;letter-spacing:.02em}
.vr-gor{margin:0 0 1.4rem;padding-left:1.2rem;line-height:1.6}
.vr-gor li{margin:0 0 .7rem}
.vr-adress{font-style:normal;margin:.4rem 0 .5rem;padding:.7rem .9rem;border:1px solid var(--line);background:var(--bg);line-height:1.5}
.vr-sp{display:grid;gap:.6rem;margin:1.5rem 0 0}
.vr-sp .vr-btn{margin-top:0}

/* Policyn under portalen */
.vr-policy{margin:2rem 0 0;border-top:1px solid var(--line)}
.vr-policy summary{cursor:pointer;min-height:52px;display:flex;align-items:center;font-size:var(--t-xs);letter-spacing:.14em;text-transform:uppercase}
@media (min-width:900px){.vr-btn{width:auto;min-width:16rem}}
/* Välkomstrutan hör inte hemma mitt i en retur */
.v-valk,.v-valk-flik,.v-valkflik{display:none!important}
.vr .vr-h:focus{outline:none}
.vr ul.vr-plagg,.vr ul.vr-plagg>li{margin-left:0;padding-left:0;list-style:none}
.vr ul.vr-plagg>li::before{content:none}
