/* Reda patient portal presentation. Visual only: codes, plans and data flows are unchanged. */
body.reda-portal-shell{--paper:#f4f3ed;--mist:#e5e9e1;--ink:#283d45;--dim:#586b6c;--line:#d4d9d1;--line-2:#aabbb9;--teal:#446b73;--teal-ink:#446b73;--teal-soft:#e6ebe3;--guld:#9a7650;--guld-soft:#eee7dc;padding-top:84px;background:var(--paper);color:var(--ink);font-family:'Outfit','DM Sans',system-ui,sans-serif;font-weight:300;line-height:1.72}
body.reda-portal-shell>nav[aria-label="Huvudmeny"],body.reda-portal-shell>footer:not(.reda-portal-footer){display:none!important}
body.reda-portal-shell a{text-underline-offset:5px}
body.reda-portal-shell :focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.reda-portal-top{position:fixed;inset:0 0 auto;z-index:120;background:rgba(244,243,237,.96);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.reda-portal-top-inner{width:min(1240px,calc(100% - 96px));height:84px;margin:auto;display:flex;align-items:center;gap:20px}
.reda-portal-brand{display:flex;align-items:center;gap:14px;min-width:0;text-decoration:none}
.reda-portal-brand img{width:118px;height:auto;display:block}
.reda-portal-badge{font:600 10px/1.2 'DM Sans',system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);border-left:1px solid var(--line);padding-left:14px;white-space:nowrap}
.reda-portal-links{margin-left:auto;display:flex;align-items:center;gap:10px}
.reda-portal-links a{min-height:44px;display:inline-flex;align-items:center;padding:10px 15px;border-radius:0;text-decoration:none;font:500 13px/1.35 'DM Sans',system-ui,sans-serif;color:var(--ink)}
.reda-portal-links a:hover{text-decoration:underline}
.reda-portal-links .back-kansei{border:1px solid var(--line-2);padding-inline:18px}
.reda-portal-links .back-kansei:hover{background:var(--mist);text-decoration:none}
body.reda-portal-shell>.wrap{width:min(1120px,calc(100% - 96px));max-width:none;padding:0;margin-inline:auto}
body.reda-portal-shell .crumb{padding-top:38px;font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.14em;color:var(--dim)}
body.reda-portal-shell header.page{padding:0;border:0}
body.reda-portal-shell .reda-hero{max-width:760px;padding:42px 0 54px}
body.reda-portal-shell .reda-portal-kicker{margin:0 0 18px;font:600 11px/1.4 'DM Sans',system-ui,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--teal)}
body.reda-portal-shell .reda-portal-title{margin:0 0 22px;font:400 clamp(48px,5.4vw,78px)/1.03 'Fraunces',Georgia,serif;letter-spacing:-.045em;color:var(--ink);max-width:10ch}
body.reda-portal-shell .reda-tag{margin:0 0 18px;font:400 clamp(23px,2.2vw,31px)/1.3 'Fraunces',Georgia,serif;color:var(--ink);max-width:23ch}
body.reda-portal-shell .reda-hero .intro{margin:0;max-width:650px;font:400 17px/1.75 'DM Sans',system-ui,sans-serif;color:var(--dim)}
body.reda-portal-shell .reda-lockup{display:none!important}
body.reda-portal-shell main{padding:0;margin:0}
body.reda-portal-shell main section{border-top:1px solid var(--line);padding:64px 0}
body.reda-portal-shell main section:first-child{border-top:0;padding-top:0}
body.reda-portal-shell #kodgrind{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:54px;align-items:center;padding:0 0 72px}
body.reda-portal-shell #kodgrind .kodkort{background:var(--mist);border-radius:0;padding:34px 36px;margin:0;box-shadow:none}
body.reda-portal-shell .kodetikett{margin:0 0 16px;font:600 11px/1.4 'DM Sans',system-ui,sans-serif;letter-spacing:.15em;text-transform:uppercase;color:var(--teal)}
body.reda-portal-shell #kodform{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;justify-content:initial;align-items:stretch}
body.reda-portal-shell #kodfalt{width:100%;min-height:54px;border:1px solid var(--line-2);border-radius:0;background:#faf9f4;color:var(--ink);font:500 17px/1.2 'IBM Plex Mono',monospace;letter-spacing:.08em;padding:14px 16px;text-align:left}
body.reda-portal-shell #kodfalt:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(68,107,115,.15)}
body.reda-portal-shell .btn{min-height:50px;border-radius:0;padding:13px 20px;font-family:'DM Sans',system-ui,sans-serif;font-weight:600;line-height:1.35}
body.reda-portal-shell .btn-teal{background:var(--ink);border-color:var(--ink);color:#fff}
body.reda-portal-shell .btn-teal:hover{background:var(--teal);border-color:var(--teal);transform:none}
body.reda-portal-shell .btn-ghost{background:transparent;border:1px solid var(--line-2);color:var(--ink)}
body.reda-portal-shell .btn-ghost:hover{background:var(--mist);transform:none}
body.reda-portal-shell #kodgrind .muted,body.reda-portal-shell #kodgrind .kodkort>p:not(.kodetikett){color:var(--dim);font-size:13px;line-height:1.7}
body.reda-portal-shell #kodgrind details{border-top:1px solid var(--line);margin-top:17px;padding-top:0}
body.reda-portal-shell #kodgrind summary{min-height:52px;display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;color:var(--teal);font:500 14px/1.5 'DM Sans',system-ui,sans-serif}
body.reda-portal-shell #kodgrind summary::after{content:'+';font-size:20px}
body.reda-portal-shell #kodgrind details[open] summary::after{content:'−'}
body.reda-portal-shell .kodinfo{max-width:390px;padding:4px 0}
body.reda-portal-shell .kodinfo p{margin:0;font:400 16px/1.8 'DM Sans',system-ui,sans-serif;color:var(--dim)}
body.reda-portal-shell .kodinfo strong{display:block;margin-bottom:10px;color:var(--ink);font-size:17px;font-weight:600}
body.reda-portal-shell .cta-row{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0 0}
body.reda-portal-shell h2{font:400 clamp(31px,3.2vw,45px)/1.15 'Fraunces',Georgia,serif;letter-spacing:-.035em;color:var(--ink);margin:0 0 20px}
body.reda-portal-shell h3{font:500 20px/1.35 'DM Sans',system-ui,sans-serif;letter-spacing:-.015em;color:var(--ink);margin:25px 0 10px}
body.reda-portal-shell main p,body.reda-portal-shell main li{font-family:'DM Sans',system-ui,sans-serif;line-height:1.8}
body.reda-portal-shell main p{margin:0 0 16px}
body.reda-portal-shell main p+p{margin-top:9px}
body.reda-portal-shell main .muted{color:var(--dim)}
body.reda-portal-shell .pp{background:transparent!important;border-radius:0!important;margin:0!important;padding:64px 0!important}
body.reda-portal-shell .pp-et,body.reda-portal-shell .eyebrow,body.reda-portal-shell .mp-sign{font:600 10px/1.5 'DM Sans',system-ui,sans-serif!important;letter-spacing:.15em!important;text-transform:uppercase;color:var(--teal)!important}
body.reda-portal-shell .cardgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin:26px 0}
body.reda-portal-shell .cardgrid .card,body.reda-portal-shell .laskort,body.reda-portal-shell .vmf,body.reda-portal-shell .nivstege{background:#faf9f4;border:0;border-radius:0;padding:22px}
body.reda-portal-shell details{border-color:var(--line)}
body.reda-portal-shell details summary{line-height:1.55}
body.reda-portal-shell #mittprogram .mp-huvud2{background:var(--mist);border-radius:0;padding:28px;margin-bottom:22px}
body.reda-portal-shell #mpIkon{border-radius:0;background:#faf9f4;box-shadow:none}
body.reda-portal-shell #mpNamn{font-family:'Fraunces',Georgia,serif;font-style:normal;color:var(--ink);font-size:29px;letter-spacing:-.025em}
body.reda-portal-shell .mp-chip{border-radius:0;background:#faf9f4;border-color:var(--line-2);font-family:'IBM Plex Mono',monospace}
body.reda-portal-shell .mp-chip.niv{background:var(--teal);border-color:var(--teal);color:#fff}
body.reda-portal-shell.kodad .aktiv details,body.reda-portal-shell #pfaqsektion details{border-radius:0;background:#faf9f4}
body.reda-portal-shell.kodad .aktiv details[open]{border-color:var(--teal)}
body.reda-portal-shell.kodad .progfaq{border-radius:0;background:var(--mist)}
body.reda-portal-shell .reda-portal-footer{margin-top:72px;border-top:1px solid var(--line);background:var(--ink);color:#e8eeee}
.reda-portal-footer-inner{width:min(1120px,calc(100% - 96px));margin:auto;padding:34px 0;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:start}
.reda-portal-footer p{margin:0;font:400 13px/1.75 'DM Sans',system-ui,sans-serif;color:#d7e0e1}
.reda-portal-footer a{color:#fff;text-decoration:underline;text-underline-offset:4px}
.reda-portal-footer-links{display:flex;gap:20px;flex-wrap:wrap;justify-content:flex-end;font:500 13px/1.5 'DM Sans',system-ui,sans-serif}
@media(max-width:800px){
 body.reda-portal-shell{padding-top:76px}
 .reda-portal-top-inner{width:calc(100% - 40px);height:76px}
 .reda-portal-brand img{width:100px}
 .reda-portal-badge{display:none}
 .reda-portal-links{gap:4px}
 .reda-portal-links a{font-size:12px;padding-inline:10px}
 body.reda-portal-shell>.wrap{width:calc(100% - 40px)}
 body.reda-portal-shell .crumb{padding-top:27px}
 body.reda-portal-shell .reda-hero{padding:30px 0 42px}
 body.reda-portal-shell .reda-portal-title{font-size:clamp(43px,12vw,62px);max-width:9ch}
 body.reda-portal-shell .reda-tag{font-size:23px}
 body.reda-portal-shell .reda-hero .intro{font-size:15px}
 body.reda-portal-shell #kodgrind{display:block;padding-bottom:48px}
 body.reda-portal-shell #kodgrind .kodkort{padding:24px 20px;margin-bottom:26px}
 body.reda-portal-shell #kodform{grid-template-columns:1fr}
 body.reda-portal-shell #kodform .btn{width:100%;justify-content:center}
 body.reda-portal-shell .kodinfo{max-width:none}
 body.reda-portal-shell main section{padding:46px 0}
 body.reda-portal-shell .pp{padding:46px 0!important}
 body.reda-portal-shell .cardgrid{grid-template-columns:1fr}
 .reda-portal-footer-inner{width:calc(100% - 40px);grid-template-columns:1fr;gap:18px}
 .reda-portal-footer-links{justify-content:flex-start}
}
@media(max-width:390px){.reda-portal-links a:first-child{display:none}.reda-portal-top-inner{width:calc(100% - 28px)}.reda-portal-brand img{width:92px}body.reda-portal-shell>.wrap{width:calc(100% - 32px)}.reda-portal-footer-inner{width:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
