:root{--ink:#153728;--forest:#115a38;--forest2:#0b4a2e;--paper:#f5f8f3;--white:#fff;--line:#dae5dc;--muted:#637166;--soft:#eaf4ec;--warn:#fff6e2;--warnink:#825c1c;--red:#a4453d;--shadow:0 16px 45px rgba(29,65,43,.09)}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#f6f8f3,#edf5ee 55%,#f7faf6);color:var(--ink);font:14px Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}.shell{width:min(1180px,calc(100% - 48px));margin:auto}.demo-strip{padding:12px 18px;background:#113e2e;color:#e6f1e8;text-align:center;font-weight:700;letter-spacing:.02em;font-size:12px;display:flex;align-items:center;justify-content:center;gap:10px}.demo-badge{display:inline-block;padding:3px 9px;border-radius:6px;background:#f4c542;color:#3a2e05;font-weight:900;letter-spacing:.08em;font-size:10px}.header{height:96px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}.brand-mark{display:grid;place-items:center;width:39px;height:39px;border-radius:10px;background:var(--forest);color:white;font:500 25px Georgia,serif}.brand b,.brand small{display:block}.brand b{font-size:18px}.brand small{margin-top:1px;color:#6e796f;font-size:10px;font-weight:750}.header nav{display:flex;gap:5px}.tab{border:0;background:transparent;color:#617067;border-radius:8px;padding:10px 13px;font-weight:760;font-size:12px}.tab.active,.tab:hover{background:#eaf3eb;color:var(--forest)}.main{padding-bottom:70px}.hero{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:center;padding:70px 0 50px}.eyebrow,.mini{margin:0;color:var(--forest);font-size:10px;font-weight:900;letter-spacing:.12em}.hero h1,.heading-row h2,.review-hero h1,.decision h2{font:500 clamp(43px,5.3vw,74px)/.95 Georgia,serif;letter-spacing:-.055em;margin:13px 0 18px}.hero h1 em{color:#5b7768;font-style:normal}.lead{max-width:710px;color:#5f6d63;font-size:16px;line-height:1.65}.chips{display:flex;flex-wrap:wrap;gap:16px;margin:24px 0}.chips span{color:#315944;font-size:12px;font-weight:740}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;padding:13px 18px;text-decoration:none;font-weight:830;font-size:13px}.primary{border:1px solid var(--forest);background:var(--forest);color:white;box-shadow:0 7px 16px rgba(14,83,50,.18)}.primary:hover{background:var(--forest2)}.secondary{border:1px solid #cfdcd2;background:white;color:#355345}.full{width:100%}.center{text-align:center}.hero-card,.table-card,.detail-card,.form-card,.result-card,.doc,.api-box,.verify-card,.decision,.insights article{background:rgba(255,255,255,.82);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.hero-card{padding:26px}.hero-score{margin:18px 0;padding:18px;border-radius:13px;background:var(--soft)}.hero-score span,.hero-score strong{display:block}.hero-score span,.hero-row span{color:#607167;font-size:10px;font-weight:850;letter-spacing:.06em}.hero-score b{display:block;margin:5px 0;font:500 52px Georgia,serif;letter-spacing:-.06em}.hero-score b small{font:800 15px Inter,system-ui,sans-serif;letter-spacing:-.02em}.hero-score strong{font-size:13px}.hero-row{display:flex;justify-content:space-between;gap:13px;padding:12px 0;border-bottom:1px solid var(--line)}.hero-row b{font-size:12px}.hint{margin:16px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.integration-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border-radius:12px;margin-bottom:22px;font-size:12px}.integration-banner div{display:grid;gap:3px}.integration-banner span{font-size:11px}.integration-banner.ready{background:#e9f6eb;border:1px solid #bde1c5;color:#1d5e37}.integration-banner.missing{background:#fff7e7;border:1px solid #efd8ae;color:#7a5b23}.good{color:#1f8a4c;font-weight:800}.bad{color:#b17920;font-weight:800}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metrics article{padding:17px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.75)}.metrics span,.metrics small{display:block;color:var(--muted);font-size:10px}.metrics span{font-weight:800}.metrics b{display:block;margin:4px 0;font:500 36px Georgia,serif;letter-spacing:-.05em}.heading-row{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:55px 0 17px}.heading-row h2{font-size:39px;margin:7px 0}.heading-row p:not(.eyebrow){max-width:680px;margin:0;color:var(--muted);font-size:12px;line-height:1.55}.inbox-layout{display:grid;grid-template-columns:1.38fr .62fr;gap:16px}.table-card{padding:0;overflow:hidden}.table-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;border-bottom:1px solid var(--line)}.table-top b,.table-top small{display:block}.table-top small{margin-top:2px;color:var(--muted);font-size:10px}.table-top select{padding:8px;border:1px solid var(--line);border-radius:8px;background:white;font-size:11px;color:#4d5d52}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%}th,td{padding:14px 16px;border-bottom:1px solid #e4ece5;text-align:left;vertical-align:middle}th{color:#718076;font-size:9px;letter-spacing:.06em}td{font-size:11px}td b,td small{display:block}td small{margin-top:3px;color:var(--muted);font-size:10px}.selected{background:#f1f7f2}.status{display:inline-block;padding:5px 7px;border-radius:999px;font-size:9px;font-weight:800}.status.done{background:#e5f4e7;color:#1d7a42}.status.pending{background:#eef2ef;color:#657268}.status.warn{background:#fff2db;color:#9a671e}.small-btn{padding:7px 9px;border:1px solid #cbdacd;background:white;color:#315541;border-radius:7px;font-size:10px;font-weight:800}.empty-row{text-align:center;color:var(--muted);padding:35px}.detail-card{min-height:295px;padding:20px}.empty{display:grid;place-items:center;min-height:220px;text-align:center;color:var(--muted);font-size:12px;line-height:1.55}.detail-card h3{margin:5px 0;font-size:20px}.detail-muted{margin:0 0 12px;color:var(--muted);font-size:11px}.detail-score{margin:16px 0;padding:13px;border-radius:11px;background:var(--soft)}.detail-score span,.detail-score strong{display:block}.detail-score span{font-size:9px;color:#547060;font-weight:900;letter-spacing:.08em}.detail-score b{display:block;margin:4px 0;font:500 36px Georgia,serif}.detail-score b small{font:800 12px Inter,system-ui,sans-serif}.detail-score strong{font-size:11px}.detail-headline{font-weight:820;font-size:13px;line-height:1.4}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.detail-grid div{padding:10px;border:1px solid var(--line);border-radius:9px}.detail-grid span,.detail-grid b{display:block}.detail-grid span{font-size:9px;color:var(--muted)}.detail-grid b{margin-top:3px;font-size:11px}.waiting,.failure{margin:15px 0;padding:13px;border-radius:10px;font-size:11px;line-height:1.45}.waiting{background:#f1f5f1;color:#55635a}.failure{background:#fff0ef;color:#90433b}.create-layout{display:grid;grid-template-columns:.65fr 1fr;gap:18px}.form-card,.result-card{padding:23px}.form-card label{display:block;margin:15px 0 0;font-weight:800;font-size:11px}.form-card input,.verify-card input,.verify-card textarea{width:100%;margin-top:7px;padding:12px;border:1px solid #cbdccf;border-radius:9px;background:#fff;color:var(--ink);outline:none}.form-card input:focus,.verify-card input:focus,.verify-card textarea:focus{border-color:#4f9a6a;box-shadow:0 0 0 3px #dff1e3}.form-card small{display:block;margin-top:5px;color:var(--muted);font-weight:500;font-size:10px;line-height:1.45}.optional{color:#8b968e;font-weight:600}.form-card button{margin-top:20px}.result-card{display:grid;place-items:center;min-height:390px}.result-card .empty{max-width:290px}.empty-mark{display:grid;place-items:center;width:43px;height:43px;margin:0 auto 10px;border-radius:50%;background:#e8f5ea;color:var(--forest);font-size:25px}.result-card h3{font-size:23px;margin:8px 0}.result-card>p{color:var(--muted);font-size:12px;line-height:1.55}.link-box{margin:15px 0;padding:12px;border-radius:9px;background:#eff5f0;color:#3d5748;font:11px ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere}.actions{display:flex;gap:8px;flex-wrap:wrap}.docs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.doc{padding:20px}.doc b{font-size:16px}.doc p{color:var(--muted);font-size:12px;line-height:1.55}.api-box{display:grid;grid-template-columns:1.2fr .8fr;gap:26px;padding:24px;margin-top:17px}.api-box h3{font:500 27px Georgia,serif;margin:8px 0}.api-box p:not(.eyebrow){color:var(--muted);line-height:1.6;font-size:12px}.api-box pre{padding:13px;border-radius:10px;background:#112f23;color:#d9f0df;white-space:pre-wrap;overflow:auto;font:10px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace}.toast{position:fixed;right:20px;bottom:20px;max-width:330px;padding:13px 15px;border-radius:10px;background:#123a29;color:#fff;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;box-shadow:var(--shadow);font-size:12px}.toast.show{opacity:1;transform:none}.hidden{display:none!important}
/* Verify */.verify-head{width:min(930px,calc(100% - 48px));margin:auto;height:100px;display:flex;align-items:center;justify-content:space-between}.secure{color:#6b7a70;font-size:11px;font-weight:750}.verify-shell{width:min(930px,calc(100% - 48px));margin:55px auto}.progress{display:grid;grid-template-columns:repeat(3,1fr);padding:16px 24px;border:1px solid var(--line);border-bottom:0;border-radius:18px 18px 0 0;background:#fff}.progress div{display:flex;align-items:center;gap:8px;color:#849087;font-size:11px;font-weight:800}.progress span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#edf1ee;color:#77857a}.progress .active{color:var(--forest)}.progress .active span{background:var(--forest);color:#fff}.verify-card{border-radius:0 0 18px 18px;min-height:480px;padding:56px 105px}.verify-copy h1,.complete h1{font:500 48px/1 Georgia,serif;letter-spacing:-.05em;margin:12px 0}.verify-copy>p{max-width:620px;color:var(--muted);font-size:14px;line-height:1.55}.verify-card label{display:block;margin-top:25px;font-size:11px;font-weight:850}.info-note{display:grid;gap:4px;margin-top:16px;padding:14px;border-radius:11px;background:#eef6ef;color:#57665d;font-size:11px;line-height:1.45}.info-note b{color:#3b5847}.form-error{min-height:15px;margin:12px 0 0;color:var(--red);font-size:11px;font-weight:700}.verify-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:27px}.steps{margin:21px 0;padding:16px 16px 16px 34px;border:1px solid var(--line);border-radius:11px;background:#fbfdfb;color:#526157;font-size:12px;line-height:1.75}.steps b{color:#1b5135}.complete{text-align:center}.check{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 18px;border-radius:50%;background:var(--forest);color:white;font-size:30px}.complete>p{max-width:600px;margin:15px auto;color:var(--muted);font-size:13px;line-height:1.55}.complete-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0}.complete-grid div{padding:11px;border:1px solid var(--line);border-radius:9px;text-align:left}.complete-grid span,.complete-grid b{display:block}.complete-grid span{color:var(--muted);font-size:9px;font-weight:800}.complete-grid b{margin-top:5px;font-size:11px}.verify-error,.review-error{display:grid;place-items:center;align-content:center;min-height:390px;text-align:center}.verify-error h1,.review-error h1{font:500 44px Georgia,serif}.verify-error p,.review-error p{max-width:550px;color:var(--muted);line-height:1.55}
/* Review */.review-main{padding:25px 0 70px}.back{color:#466653;text-decoration:none;font-size:12px;font-weight:800}.review-hero{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:35px 0 28px;border-bottom:1px solid var(--line)}.review-hero h1{font-size:55px;margin:8px 0}.review-hero>div>p:not(.eyebrow){max-width:760px;margin:0;color:var(--muted);font-size:14px;line-height:1.6}.review-meta{display:flex;gap:8px 18px;flex-wrap:wrap;margin-top:16px;color:#5c6a61;font-size:11px}.outcome{width:280px;padding:18px;border-radius:14px}.outcome.green{background:#e9f6eb}.outcome.amber{background:var(--warn)}.outcome-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#d8ecdd;color:#216741;font-size:18px}.outcome.amber .outcome-icon{background:#ffebba;color:#9a671e}.outcome b,.outcome small{display:block}.outcome b{margin-top:10px;font-size:14px}.outcome small{margin-top:4px;color:#59665d;font-size:11px;line-height:1.45}.decision{display:grid;grid-template-columns:1.35fr .65fr;gap:25px;margin-top:24px;padding:27px}.decision.green{background:#eaf8ed;border-color:#d0e8d4}.decision.amber{background:#fff9ec;border-color:#efdcb5}.decision h2{font-size:33px;margin:6px 0}.decision p:not(.eyebrow){max-width:720px;color:#59685f;font-size:13px;line-height:1.55}.score-note{margin-top:16px;padding:11px;border-radius:10px;background:rgba(255,255,255,.6);color:#55645b;font-size:11px;font-weight:650;line-height:1.5}.score-card{display:grid;align-content:center;justify-items:end;text-align:right;border:1px solid #d7e4da;border-radius:13px;background:rgba(255,255,255,.7);padding:17px}.score-card span{color:#4d6657;font-size:10px;font-weight:900;letter-spacing:.08em}.score-card>b{font:500 62px/.95 Georgia,serif;letter-spacing:-.07em;margin:5px 0}.score-card>b small{font:800 16px Inter,system-ui,sans-serif}.score-card strong{font-size:13px}.score-card>small{margin-top:5px;color:#5c6a60;font-size:10px}.review-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.review-metrics article{padding:15px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.8)}.review-metrics span,.review-metrics small{display:block;color:var(--muted);font-size:9px}.review-metrics span{font-weight:850}.review-metrics b{display:block;margin:5px 0;font-size:15px}.insights{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.insights article{padding:20px}.insights h3{margin:6px 0 0;font-size:20px}.positive-list,.warning-list,.limitations{display:grid;gap:10px;margin:17px 0 0;padding:0;list-style:none;color:#516158;font-size:12px;line-height:1.45}.positive-list li,.warning-list li{display:flex;gap:8px}.positive-list li:before{content:'✓';font-weight:900;color:#19733e}.warning-list li:before{content:'!';font-weight:900;color:#a06c1a}.deep{margin-top:48px}.deep>h2{font:500 38px Georgia,serif;margin:8px 0 16px}details{margin-top:9px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.82)}summary{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 19px;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary b,summary small{display:block}summary b{font-size:14px}summary small{margin-top:3px;color:var(--muted);font-size:11px}.details-body{padding:16px 19px 20px;border-top:1px solid var(--line)}.metric-detail{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.metric-detail div{padding:12px;border:1px solid var(--line);border-radius:9px}.metric-detail span,.metric-detail b{display:block}.metric-detail span{color:var(--muted);font-size:9px}.metric-detail b{margin-top:4px;font-size:12px}.history{margin-top:15px;overflow:auto;border:1px solid var(--line);border-radius:10px}.history table{min-width:650px}.muted-copy{margin:15px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.limitations{padding-left:19px;list-style:disc}
@media(max-width:900px){.hero,.inbox-layout,.create-layout,.api-box,.decision,.insights{grid-template-columns:1fr}.hero{gap:30px;padding-top:35px}.metrics,.review-metrics{grid-template-columns:repeat(2,1fr)}.header{height:78px}.score-card{justify-items:start;text-align:left}.outcome{width:auto}.verify-card{padding:40px}.review-hero{display:grid;grid-template-columns:1fr}.metric-detail{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.shell,.verify-head,.verify-shell{width:min(100% - 28px,1180px)}.header nav{gap:0}.tab{padding:8px 6px;font-size:10px}.hero h1{font-size:48px}.metrics,.review-metrics,.complete-grid,.metric-detail{grid-template-columns:1fr}.heading-row{align-items:start;flex-direction:column;margin-top:40px}.verify-head{height:75px}.secure{display:none}.progress{grid-template-columns:1fr;gap:8px}.verify-card{padding:30px 22px;min-height:440px}.verify-copy h1,.complete h1{font-size:38px}.verify-actions{flex-direction:column}.verify-actions button{width:100%}.review-hero h1{font-size:43px}.decision h2{font-size:30px}.decision{padding:20px}.score-card>b{font-size:53px}}

/* Tink callback */.callback-shell{width:min(720px,calc(100% - 48px));margin:120px auto}.callback-card{padding:55px;text-align:center;background:rgba(255,255,255,.84);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.callback-card h1{font:500 44px/1 Georgia,serif;letter-spacing:-.05em;margin:12px 0}.callback-card p:not(.eyebrow){max-width:520px;margin:0 auto;color:var(--muted);font-size:14px;line-height:1.6}.spinner{width:36px;height:36px;margin:0 auto 20px;border:4px solid #dcebe0;border-top-color:var(--forest);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.callback-code{width:100%;min-height:90px;margin-top:18px;padding:12px;border:1px solid var(--line);border-radius:10px;font:12px ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all}@media(max-width:560px){.callback-shell{margin:75px auto}.callback-card{padding:35px 22px}.callback-card h1{font-size:36px}}

/* === Review v1.2: tvåkolumnslayout === */
.review-top{padding:35px 0 22px;border-bottom:1px solid var(--line)}
.review-top h1{font:500 clamp(40px,5vw,62px)/.96 Georgia,serif;letter-spacing:-.05em;margin:10px 0 14px}
.review-headline{max-width:820px;margin:0;color:#54635a;font-size:15px;line-height:1.6}
.review-split{display:grid;grid-template-columns:1.55fr .9fr;gap:26px;align-items:start;margin-top:26px}
.review-left .left-title{font:500 30px Georgia,serif;letter-spacing:-.03em;margin:8px 0 18px}

/* Stora, lättavlästa nyckeltalskort */
.kpi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.kpi{padding:22px 22px 20px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.85);box-shadow:var(--shadow);position:relative;overflow:hidden}
.kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#d7e2da}
.kpi.good:before{background:#3f9c63}
.kpi.bad:before{background:#dba23a}
.kpi-label{display:block;color:#56685d;font-size:11px;font-weight:850;letter-spacing:.04em}
.kpi-value{display:block;margin:10px 0 7px;font:500 clamp(30px,3.4vw,42px)/1 Georgia,serif;letter-spacing:-.04em;color:var(--ink)}
.kpi-value .per{font:800 14px Inter,system-ui,sans-serif;letter-spacing:-.01em;color:#7a877e;margin-left:5px}
.kpi.good .kpi-value{color:#1f6b40}
.kpi.bad .kpi-value{color:#9a6a1c}
.kpi-sub{display:block;color:var(--muted);font-size:11px;line-height:1.45}

/* Höger kolumn: score + utfall + kreditpuls. Ligger fast i flödet (rör sig inte
   separat vid skroll), så att kreditpuls-rutan under den gula rutan står stilla. */
.score-rail{display:grid;gap:14px;align-self:start}
.score-block{padding:26px;border-radius:18px;border:1px solid var(--line);box-shadow:var(--shadow);text-align:left}
.score-block.green{background:#eaf8ed;border-color:#cfe7d4}
.score-block.amber{background:#fff9ec;border-color:#efdcb5}
.score-eyebrow{display:block;color:#4d6657;font-size:10px;font-weight:900;letter-spacing:.1em}
.score-big{display:block;margin:8px 0 4px;font:500 78px/.9 Georgia,serif;letter-spacing:-.07em;color:var(--ink)}
.score-big small{font:800 20px Inter,system-ui,sans-serif;color:#7a877e}
.score-label{display:block;font-size:15px;font-weight:850;color:#2c3f34}
.score-ratio{display:inline-block;margin-top:10px;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.7);font-size:11px;font-weight:800;color:#3d5748}
.score-meaning{margin:14px 0 0;color:#566459;font-size:11.5px;line-height:1.55}
.outcome-block{padding:20px;border-radius:16px;border:1px solid var(--line)}
.outcome-block.green{background:#e9f6eb;border-color:#cfe7d4}
.outcome-block.amber{background:var(--warn);border-color:#efdcb5}
.outcome-block .outcome-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#d8ecdd;color:#216741;font-size:19px;font-weight:800}
.outcome-block.amber .outcome-icon{background:#ffebba;color:#9a671e}
.outcome-block b{display:block;margin:12px 0 6px;font-size:15px;color:#2c3f34}
.outcome-block p{margin:0;color:#586559;font-size:12px;line-height:1.5}

/* Stresstest-tabellens rader och taggar */
.history table tr.risk td{background:#fff6ee}
.history table tr.ok td{background:#f3faf4}
.tag{display:inline-block;padding:3px 9px;border-radius:999px;font-size:10px;font-weight:850}
.tag.ok{background:#e0f1e4;color:#1d7a42}
.tag.risk{background:#fde8cf;color:#9a671e}

/* Rättighetsblock */
.details-body.rights h4{margin:16px 0 5px;font-size:12px;color:#2c3f34}
.details-body.rights h4:first-child{margin-top:0}
.rights-disclaimer{margin:16px 0 0;padding:11px 13px;border-radius:10px;background:#f4f7f4;color:#5d6a60;font-size:11px;line-height:1.5;font-style:italic}

@media(max-width:980px){
  .review-split{grid-template-columns:1fr}
  .score-rail{position:static;order:-1}
}
@media(max-width:620px){
  .kpi-grid{grid-template-columns:1fr}
  .review-top h1{font-size:38px}
  .score-big{font-size:64px}
}

/* === Review: fasta rutor med expandera-ikon som öppnar en modal === */

/* Score-panelen kvar sticky, i linje med första KPI-kortet. */
@media(min-width:981px){
  .score-rail{overflow:visible;margin-top:78px}
}
@media(max-width:980px){
  .score-rail{margin-top:0}
}

/* Kort med detaljinfo behöver plats för ikonen uppe till höger. */
.kpi.has-pop,
.score-block.has-pop,
.outcome-block.has-pop,
.insights article.has-pop{position:relative}

/* Själva expandera-ikonen. Diskret men tydlig, uppe i högra hörnet. */
.detail-toggle{position:absolute;top:14px;right:14px;z-index:6;
  display:grid;place-items:center;width:30px;height:30px;
  border:1px solid #cfdcd2;border-radius:9px;background:rgba(255,255,255,.9);
  color:#3a5545;cursor:pointer;padding:0;
  transition:background .15s ease,border-color .15s ease,transform .15s ease}
.detail-toggle:hover{background:#eef5ef;border-color:#a9c7b3;transform:translateY(-1px)}
.detail-toggle:focus-visible{outline:2px solid #4f9a6a;outline-offset:2px}
.detail-toggle svg{width:15px;height:15px;display:block}
/* På gröna/gula rutor: låt ikonen smälta in mot deras bakgrund. */
.score-block .detail-toggle,.outcome-block .detail-toggle{background:rgba(255,255,255,.75)}

/* Detaljdatan renderas dold i kortet och läses av modalen vid klick. */
.detail-data{display:none}

/* Innehållsstilar (återanvänds inne i modalen). */
.kpi-pop-title{display:block;color:#1f5a38;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.kpi-pop-note{margin:10px 0 0;color:#54635a;font-size:13.5px;line-height:1.6}
.kpi-pop-rows{margin-top:16px;display:grid;gap:10px}
.kpi-pop-row{display:flex;justify-content:space-between;gap:16px;align-items:baseline;
  padding-bottom:10px;border-bottom:1px solid #eef3ee}
.kpi-pop-row:last-child{border-bottom:0;padding-bottom:0}
.kpi-pop-row span{color:#647268;font-size:13px}
.kpi-pop-row b{color:var(--ink);font-size:15px;font-weight:800;white-space:nowrap}
.rail-pop-list{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:11px}
.rail-pop-list li{position:relative;padding-left:22px;color:#516158;font-size:13.5px;line-height:1.5}
.rail-pop-list li.ok:before{content:'\2713';position:absolute;left:0;color:#19733e;font-weight:900}
.rail-pop-list li.risk:before{content:'!';position:absolute;left:0;color:#a06c1a;font-weight:900}

/* Ett stort tal överst i modalen som visar rutans huvudvärde. */
.detail-hero{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;
  padding:16px 18px;margin:0 0 4px;border-radius:14px;background:#eef6f0;border:1px solid #d3e7d8}
.detail-hero b{font:500 40px/1 Georgia,serif;letter-spacing:-.04em;color:var(--ink)}
.detail-hero span{color:#54635a;font-size:13px;font-weight:750}

/* === Rättighetsknapp + fullskärmsmodal på verify-sidan === */
.rights-link{display:inline-flex;align-items:center;gap:8px;margin:16px 0 0;
  padding:11px 15px;border:1px solid #cfdcd2;border-radius:10px;background:#fff;
  color:#2c5240;font-weight:800;font-size:12.5px}
.rights-link:hover{background:#f0f6f1;border-color:#a9c7b3}

.rights-overlay{position:fixed;inset:0;z-index:1000;display:none;
  align-items:center;justify-content:center;padding:24px;
  background:rgba(17,40,28,.55);backdrop-filter:blur(2px)}
.rights-overlay.show{display:flex}
body.rights-open{overflow:hidden}

.rights-modal{width:min(920px,96vw);max-height:min(88vh,940px);
  display:flex;flex-direction:column;background:#fff;border-radius:20px;overflow:hidden;
  box-shadow:0 40px 100px rgba(12,40,26,.4);animation:rightsIn .18s ease}
/* Detaljmodalen (review) sizas efter innehållet – smalare och lägre. */
#detailOverlay .rights-modal{width:min(680px,94vw)}
@keyframes rightsIn{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}
.rights-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  padding:22px 26px;border-bottom:1px solid var(--line);background:#f7faf6}
.rights-modal-head h2{margin:5px 0 0;font:500 25px Georgia,serif;letter-spacing:-.02em;color:var(--ink)}
.rights-close{display:grid;place-items:center;width:38px;height:38px;flex:none;
  border:1px solid #cfdcd2;border-radius:10px;background:#fff;color:#3a5545;font-size:15px;font-weight:800}
.rights-close:hover{background:#eef4ef;border-color:#a9c7b3}
.rights-modal-body{padding:24px 30px 34px;overflow-y:auto;color:#3f4f45;font-size:14px;line-height:1.6}
.rights-modal-body .rights-lead{font-size:15px;color:#33463b;background:#eef6f0;
  border:1px solid #d3e7d8;border-radius:12px;padding:15px 17px;margin:0 0 20px}
.rights-modal-body h3{margin:22px 0 7px;font-size:15px;color:#1f5a38}
.rights-modal-body p{margin:7px 0}
.rights-list{margin:9px 0 0;padding-left:20px;display:grid;gap:7px}
.rights-list li{line-height:1.5}
.rights-loading{color:var(--muted)}
.rights-modal-body .rights-disclaimer{margin-top:24px;padding:13px 15px;border-radius:10px;
  background:#f4f7f4;color:#5d6a60;font-size:12px;font-style:italic;line-height:1.55}

@media(max-width:560px){
  .rights-overlay{padding:0}
  .rights-modal{width:100vw;height:100vh;border-radius:0}
  .rights-modal-body{padding:20px 20px 30px}
}

/* === Inbox: kompakt detaljruta + visa-fler-knapp === */
/* Detaljrutan ska inte sträckas ut lika hög som tabellen – håll den kompakt uppe. */
.inbox-layout{align-items:start}
.detail-card{min-height:0}
.detail-info h3{margin:5px 0;font-size:20px}
.detail-info .detail-muted{margin:0 0 14px}
.detail-info .detail-grid{grid-template-columns:1fr 1fr}
.detail-info button{margin-top:6px}

/* "Visa alla" / "Visa färre" under tabellen. */
.show-more{width:100%;padding:13px;border:0;border-top:1px solid var(--line);
  background:#f4f8f4;color:#2c5240;font-weight:800;font-size:12px}
.show-more:hover{background:#eaf3eb}

/* === Hero-exempel: färg efter score, matchar analyssidan === */
.hero-score.green{background:#eaf8ed;border:1px solid #cfe7d4}
.hero-score.amber{background:#fff9ec;border:1px solid #efdcb5}
.hero-score.amber strong{color:#8a6414}

/* === Bantad vy (analysunderlag raderat efter 14 dagar) === */
.minimised-banner{display:flex;gap:14px;align-items:flex-start;margin:22px 0 8px;
  padding:16px 18px;border:1px solid #e2d9c3;border-radius:14px;background:#fbf7ec}
.minimised-banner .mb-icon{font-size:22px;line-height:1}
.minimised-banner b{display:block;color:#6f5a1e;font-size:14px;margin-bottom:3px}
.minimised-banner p{margin:0;color:#7a6a4d;font-size:12.5px;line-height:1.55}
.decision-card{margin-top:14px;border:1px solid var(--line);border-radius:14px;
  background:rgba(255,255,255,.85);overflow:hidden}
.decision-row{display:flex;justify-content:space-between;gap:16px;align-items:baseline;
  padding:14px 18px;border-bottom:1px solid #eef3ee}
.decision-row:last-child{border-bottom:0}
.decision-row span{color:#647268;font-size:12.5px}
.decision-row b{color:var(--ink);font-size:14px;font-weight:800;text-align:right}

/* === Profilmeny i headern === */
.header{position:relative}
.profile-area{position:relative;display:flex;align-items:center;gap:10px}
.login-link{color:#2c5240;font-weight:800;font-size:13px;text-decoration:none;padding:9px 15px;border:1px solid #cfdcd2;border-radius:10px}
.login-link:hover{background:#eef5ef}
.profile-btn{display:flex;align-items:center;gap:10px;padding:6px 12px 6px 6px;border:1px solid var(--line);border-radius:30px;background:#fff;cursor:pointer}
.profile-btn:hover{border-color:#a9c7b3;background:#f6faf6}
.avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#1f5a38;color:#fff;font-size:12px;font-weight:800}
.profile-meta{display:flex;flex-direction:column;line-height:1.2;text-align:left}
.profile-meta b{font-size:12.5px;color:var(--ink)}
.profile-meta small{font-size:10.5px;color:var(--muted)}
.profile-menu{position:absolute;top:calc(100% + 8px);right:0;width:240px;z-index:300;
  background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 50px rgba(20,55,36,.18);overflow:hidden}
.pm-head{padding:15px 16px 12px}
.pm-head b{display:block;font-size:14px;color:var(--ink)}
.pm-head small{display:block;color:var(--muted);font-size:11.5px;margin-top:2px}
.pm-company{padding:10px 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#4d6657;font-size:11.5px;font-weight:700;background:#f7faf6}
.pm-item{width:100%;text-align:left;padding:13px 16px;border:0;background:#fff;color:#a23b3b;font-weight:800;font-size:13px;cursor:pointer}
.pm-item:hover{background:#fbf1f1}

/* === Auth-sidor (login/join) === */
.auth-shell{max-width:460px;margin:0 auto;padding:50px 20px 70px}
.auth-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 18px 50px rgba(20,55,36,.08)}
.auth-tabs{display:flex;gap:6px;margin-bottom:22px;background:#f0f5f0;border-radius:12px;padding:4px}
.auth-tab{flex:1;padding:10px;border:0;border-radius:9px;background:transparent;color:#54655b;font-weight:800;font-size:12.5px;cursor:pointer}
.auth-tab.active{background:#fff;color:var(--ink);box-shadow:0 2px 6px rgba(20,55,36,.08)}
.auth-pane h1{font-size:27px;margin:0 0 4px}
.auth-sub{color:var(--muted);font-size:13px;margin:0 0 20px;line-height:1.5}
.auth-pane label{display:block;margin-bottom:14px;font-size:12.5px;font-weight:800;color:#3c4c42}
.auth-pane input{width:100%;margin-top:6px;padding:12px 13px;border:1px solid #cfdcd2;border-radius:10px;font-size:14px;font-weight:500;box-sizing:border-box}
.auth-pane input:focus{outline:2px solid #4f9a6a;outline-offset:1px;border-color:transparent}
.primary.full{width:100%;justify-content:center}
.auth-hint{margin-top:16px;padding:11px 13px;border-radius:10px;background:#f4f8f4;color:#55645b;font-size:11.5px;line-height:1.5}

/* === Företags- och adminvy === */
.company-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.stat-card{padding:18px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.85)}
.stat-card h3{margin:6px 0 2px;font-size:18px}
.stat-card .big{display:block;font:500 34px/1 Georgia,serif;color:var(--ink);margin:6px 0 2px}
.stat-card small{color:var(--muted);font-size:11px}
.invite-box{display:flex;justify-content:space-between;align-items:center;gap:20px;
  padding:18px 20px;margin-bottom:16px;border:1px solid #cfe0d4;border-radius:14px;background:#f2f8f3}
.invite-box b{font-size:14px}
.invite-box p{margin:3px 0 0;font-size:12px}
.table-card{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;margin-top:8px}
.table-head{display:flex;justify-content:space-between;align-items:center;padding:15px 18px;border-bottom:1px solid var(--line)}
.table-card table{width:100%;border-collapse:collapse}
.table-card th{text-align:left;padding:11px 18px;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}
.table-card td{padding:13px 18px;border-bottom:1px solid #eef3ee;font-size:13px;vertical-align:top}
.table-card tr:last-child td{border-bottom:0}
.table-card td b{display:block;color:var(--ink)}
.table-card td small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
@media(max-width:820px){.company-grid{grid-template-columns:1fr 1fr}.invite-box{flex-direction:column;align-items:flex-start}}

/* === Review-åtgärder (beslutsmotivering, övervakning) === */
.review-actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
.review-actions .secondary{font-size:13px}

/* Övervakningspanel */
.monitoring-panel{margin:8px 0 24px;padding:22px;border:1px solid #cfe0d4;border-radius:16px;background:#f6faf6}
.mon-head h3{margin:4px 0 6px;font-size:19px}
.mon-scenarios{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:14px 0 18px}
.chip{padding:7px 13px;border:1px solid #bcd3c3;border-radius:20px;background:#fff;color:#2c5240;font-weight:700;font-size:12px;cursor:pointer}
.chip:hover{background:#eaf5ec}
.chip:disabled{opacity:.5;cursor:wait}
.mon-status{display:flex;flex-direction:column;padding:12px 15px;border-radius:12px;margin-bottom:14px}
.mon-status b{font-size:15px}.mon-status small{font-size:11px;opacity:.8}
.mon-status.bad{background:#fbecec;border:1px solid #e6c3c3;color:#8a2f2f}
.mon-status.warn{background:#fbf6e9;border:1px solid #e6d8b3;color:#7a5c1e}
.mon-status.good{background:#eaf7ee;border:1px solid #c6e4cf;color:#276b41}
.mon-status.neutral{background:#eef2ef;border:1px solid #d5ded7;color:#48584e}
.mon-deltas{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}
.mon-deltas>div{padding:11px 13px;border:1px solid var(--line);border-radius:11px;background:#fff}
.mon-deltas span{display:block;font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}
.mon-deltas b{font-size:14px}
.mon-deltas .up{color:#276b41}.mon-deltas .down{color:#b3402f}
.monitoring-panel h4{margin:16px 0 8px;font-size:13px}
.mon-flags{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:7px}
.mon-flags li{padding:10px 13px;border-radius:10px;font-size:13px;border-left:3px solid}
.mon-flags li.bad{background:#fbecec;border-color:#c0392b}
.mon-flags li.warn{background:#fbf6e9;border-color:#c99a1e}
.mon-flags li.neutral{background:#eef2ef;border-color:#9aa}
.mon-actions{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:13px;color:#3a4a40}
@media(max-width:820px){.mon-deltas{grid-template-columns:1fr 1fr}}

/* Återanvändbar modal */
.rs-modal-overlay{position:fixed;inset:0;background:rgba(20,40,28,.55);display:grid;place-items:center;z-index:1000;padding:20px}
.rs-modal-overlay[hidden]{display:none}
.rs-modal{background:#fff;border-radius:18px;width:min(680px,96vw);max-height:88vh;overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.3)}
.rs-modal-head{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff}
.rs-modal-head b{font-size:17px}
.rs-modal-close{border:1px solid var(--line);background:#fff;border-radius:9px;width:34px;height:34px;cursor:pointer;font-size:15px}
.rs-modal-body{padding:22px 24px}
.rs-modal-body h4{margin:18px 0 8px;font-size:13px;color:#2c5240;text-transform:uppercase;letter-spacing:.05em}
.notice-hero{padding:16px 18px;border-radius:13px;background:#eef2ef;margin-bottom:8px}
.notice-hero.good{background:#eaf7ee;border:1px solid #c6e4cf}
.notice-hero.warn{background:#fbf6e9;border:1px solid #e6d8b3}
.notice-hero b{font-size:16px;display:block;margin-bottom:4px}
.notice-hero p{margin:0;font-size:13px;color:#3a4a40}
.notice-list{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;font-size:13.5px}
.notice-list.good li{color:#276b41}.notice-list.warn li{color:#7a5c1e}
.notice-disclaimer{margin-top:18px;padding:12px 14px;background:#f4f6f4;border-radius:10px;font-size:11.5px;color:#5a6a60;line-height:1.5}

/* === Bevakningsöversikt === */
.mon-badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:800}
.mon-badge.bad{background:#fbecec;color:#8a2f2f}
.mon-badge.warn{background:#fbf6e9;color:#7a5c1e}
.mon-badge.good{background:#eaf7ee;color:#276b41}
.mon-badge.neutral{background:#eef2ef;color:#48584e}
.mini-link{color:#2c5240;font-weight:700;font-size:12.5px;text-decoration:none}
.mini-link:hover{text-decoration:underline}

/* === Kompakt Kreditpuls-kort (i höger rail) + stor modal === */
.mon-card-slot{margin:0}
.mon-card{width:100%;box-sizing:border-box;cursor:pointer;position:relative}
.mon-card:hover{border-color:#a9c7b3}
.mon-card-status{font-size:22px}
.mon-card-status.bad{color:#8a2f2f}
.mon-card-status.warn{color:#7a5c1e}
.mon-card-status.good{color:#276b41}
.mon-card-status.neutral{color:var(--ink)}
/* Den stora övervakningsmodalen: bredare och högre för att rymma all detalj */
.rights-modal.mon-modal{width:min(860px,96vw);max-height:90vh}

/* === Beslutsmotivering: åtgärder i modal === */
.notice-actions{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:6px}
.notice-actions .secondary{font-size:12.5px}
.notice-actions-hint{margin:0 0 16px;font-size:11.5px;color:var(--muted)}
.notice-flash{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(20px);
  background:#173d28;color:#fff;padding:12px 20px;border-radius:12px;font-size:13px;font-weight:600;
  box-shadow:0 12px 40px rgba(0,0,0,.28);opacity:0;pointer-events:none;transition:.25s;z-index:2000;max-width:90vw;text-align:center}
.notice-flash.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* === Fristående beslutsmotiverings-sida (utskrift/PDF) === */
.notice-page{background:#eef2ee}
.notice-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;
  padding:16px 30px;background:#fff;border-bottom:1px solid var(--line);flex-wrap:wrap}
.notice-toolbar-actions{display:flex;gap:9px;flex-wrap:wrap}
.notice-sheet{max-width:800px;margin:30px auto 60px;background:#fff;padding:48px 56px;
  border-radius:6px;box-shadow:0 10px 40px rgba(20,55,36,.10)}
.notice-sheet-head{display:flex;gap:16px;align-items:flex-start;border-bottom:2px solid #173d28;padding-bottom:20px;margin-bottom:24px}
.notice-sheet-head .brand-mark{width:44px;height:44px;font-size:22px}
.notice-sheet-head h1{margin:2px 0 4px;font-size:28px}
.notice-ref{color:var(--muted);font-size:12px;margin:0}
.notice-sheet h3{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:#2c5240;margin:22px 0 9px}
.notice-para{font-size:13.5px;line-height:1.6;color:#3a4a40;margin:0}
.notice-page .notice-hero{padding:18px 20px;border-radius:12px;background:#eef2ef;margin-bottom:6px}
.notice-page .notice-hero.good{background:#eaf7ee;border:1px solid #c6e4cf}
.notice-page .notice-hero.warn{background:#fbf6e9;border:1px solid #e6d8b3}
.notice-page .notice-hero b{font-size:17px;display:block;margin-bottom:4px}
.notice-page .notice-hero p{margin:0;font-size:13.5px;color:#3a4a40}

@media print {
  .no-print{display:none !important}
  .notice-page{background:#fff}
  .notice-sheet{box-shadow:none;margin:0;max-width:100%;padding:0 10px}
  @page{margin:18mm}
}

/* === Admin: affärsöversikt === */
.admin-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:20px}
.admin-kpis .stat-card.accent{background:#eaf7ee;border-color:#c6e4cf}
.admin-kpis .stat-card .big{font-size:26px}
.admin-table td small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.admin-table .margin-pos{color:#276b41}
.admin-foot{margin-top:14px;font-size:12px}
@media(max-width:1100px){.admin-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){.admin-kpis{grid-template-columns:1fr 1fr}}

/* Priseditor */
.price-row{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;
  padding:14px 0;border-bottom:1px solid var(--line)}
.price-svc b{display:block;font-size:14px}
.price-svc small{color:var(--muted);font-size:11.5px}
.price-row label{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:800;color:#54655b;text-transform:uppercase}
.price-row input{width:82px;padding:9px 10px;border:1px solid #cfdcd2;border-radius:9px;font-size:14px;font-weight:600;text-align:right}
.price-row input:focus{outline:2px solid #4f9a6a;outline-offset:1px;border-color:transparent}
.price-row label span{font-weight:600;color:var(--muted);text-transform:none;font-size:12px}
.price-preview{display:flex;gap:14px;margin:18px 0 6px;padding:14px 16px;background:#f5f9f5;border-radius:12px}
.price-preview>div{flex:1}
.price-preview span{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}
.price-preview b{font-size:17px}
.price-preview .pp-margin b{color:#276b41}

/* Dölj marknadsförings-vyn helt för admin (extra säkerhet) */
body.is-admin #overview,body.is-admin #create{display:none !important}

/* === Avatarer och användarstatistik === */
.avatar-img{background-size:cover;background-position:center;color:transparent}
.pm-head{display:flex;align-items:center;gap:12px}
.pm-head .avatar{width:40px;height:40px;flex:none}
.user-cell{display:flex;align-items:center;gap:10px}
.user-cell .avatar{width:34px;height:34px;flex:none;font-size:12px}
/* Användarrader i admin-modal */
.user-row{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}
.user-row:last-child{border-bottom:0}
.user-row .avatar{width:40px;height:40px;flex:none}
.user-meta{flex:1;min-width:0}
.user-meta b{display:block;font-size:14px}
.user-meta small{color:var(--muted);font-size:11.5px}
.user-stats{display:flex;gap:18px}
.user-stats>div{text-align:right}
.user-stats span{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.user-stats b{font-size:15px}

/* === Demobank-steg i verifieringen === */
.demo-bank-box{display:flex;align-items:center;gap:14px;padding:16px 18px;border:1px solid #cfe0d4;border-radius:14px;background:#f6faf6;margin:6px 0 4px}
.demo-bank-logo{width:46px;height:46px;border-radius:12px;background:#eaf3ec;display:grid;place-items:center;font-size:24px;flex:none}
.demo-bank-box b{display:block;font-size:15px}
.demo-bank-box span{font-size:12px;color:var(--muted)}
