:root{--ink:#102b2f;--muted:#5d7073;--bg:#f4f7f6;--card:#fff;--line:#dbe6e3;--brand:#0b6b68;--brand2:#0f827d;--ok:#18794e;--bad:#b42318;--warn:#a15c00;--shadow:0 18px 50px rgba(16,43,47,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.site-header{min-height:72px;display:flex;align-items:center;justify-content:space-between;padding:10px max(24px,calc((100vw - 1160px)/2));background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.brand{font-weight:850;color:var(--ink);text-decoration:none;letter-spacing:-.02em}.brand span{font-size:.72rem;background:#dff4ef;color:var(--brand);padding:3px 7px;border-radius:20px}.site-header nav{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:flex-end}.site-header nav a{color:var(--muted);text-decoration:none;font-weight:650}.nav-form{margin:0}.nav-form button{border:0;background:transparent;color:var(--muted);font:inherit;font-weight:650;cursor:pointer;padding:0}.page-shell{max-width:1160px;margin:auto;padding:52px 24px 80px}.hero{max-width:800px;margin:0 0 34px}.hero.compact{max-width:720px}.hero h1{font-size:clamp(2.2rem,6vw,4.8rem);line-height:1.02;letter-spacing:-.055em;margin:6px 0 20px}.hero.compact h1{font-size:clamp(2.1rem,5vw,3.8rem)}.hero>p:last-child{font-size:1.16rem;color:var(--muted);max-width:690px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:850;color:var(--brand);margin:0}.panel{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow)}.form-panel{margin-bottom:44px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}label{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:.92rem}input,select{width:100%;border:1px solid #b9cbc7;border-radius:10px;padding:12px 13px;background:white;color:var(--ink);font:inherit}input:focus,select:focus{outline:3px solid rgba(15,130,125,.18);border-color:var(--brand2)}.file-drop{margin:18px 0;padding:24px;border:1.5px dashed #93b6b0;border-radius:15px;background:#f7fbfa;cursor:pointer}.file-drop input{padding:8px 0;border:0;background:transparent}.file-title{font-size:1.05rem}.file-help,.form-note,.field-help{color:var(--muted);font-size:.86rem}.checkbox-row{display:grid;grid-template-columns:20px 1fr;align-items:start;gap:12px;margin:18px 0;padding:14px;background:#f6f8f8;border-radius:12px}.checkbox-row input{margin-top:4px}.checkbox-row.muted,.muted{opacity:.6}.primary,.button-link{display:inline-block;border:0;border-radius:11px;padding:13px 20px;background:var(--brand);color:#fff;text-decoration:none;font-weight:800;font:inherit;cursor:pointer}.primary:hover,.button-link:hover{background:var(--brand2)}.danger-button{display:inline-block;border:1px solid #e5a5a0;border-radius:11px;padding:11px 16px;background:#fff1f0;color:var(--bad);font:inherit;font-weight:800;cursor:pointer}.danger-button:hover{background:#ffe4e1}.alert{border-radius:13px;padding:14px 16px;margin:18px 0;border:1px solid}.alert.danger{background:#fff1f0;border-color:#ffc9c5;color:#8f1d15}.alert.warning{background:#fff8e8;border-color:#f1d49b;color:#754300}.alert.success{background:#e9f8ef;border-color:#a9dfbd;color:#12613d}.result-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:52px 0 18px}.result-heading h2{font-size:2rem;margin:4px 0}.export-actions{display:flex;flex-wrap:wrap;gap:8px}.export-actions a{padding:9px 12px;border:1px solid var(--line);border-radius:9px;color:var(--brand);background:white;text-decoration:none;font-weight:750;font-size:.88rem}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{padding:18px;background:white;border:1px solid var(--line);border-top:4px solid #8aa19d;border-radius:14px}.metric strong{display:block;font-size:2rem;line-height:1}.metric span{color:var(--muted);font-size:.85rem}.metric.ok{border-top-color:var(--ok)}.metric.bad{border-top-color:var(--bad)}.metric.warn{border-top-color:var(--warn)}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.summary-grid .ai{grid-column:1/-1}.result-section{margin-top:16px}.result-section h3{margin-top:0}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:840px}th,td{text-align:left;padding:13px 11px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}td small{display:block;color:var(--muted);font-size:.75rem;margin-top:3px;max-width:360px}.warning-text{color:var(--warn)!important}.status{display:inline-block;padding:4px 8px;border-radius:8px;font-weight:850;font-size:.75rem}.status.normal{background:#e5f6ec;color:var(--ok)}.status.abnormal{background:#ffebe9;color:var(--bad)}.status.review{background:#fff2d6;color:var(--warn)}.trend-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.trend-card h3{margin:0}.trend-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.86rem}.trend-chart{width:100%;height:180px;margin-top:12px}.trend-chart polyline{fill:none;stroke:var(--brand);stroke-width:3}.trend-chart circle{fill:white;stroke:var(--brand);stroke-width:3}.trend-table{min-width:0;font-size:.84rem}.auth-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,480px);gap:56px;align-items:center;min-height:62vh}.auth-copy h1{font-size:clamp(2.6rem,6vw,5rem);line-height:1;letter-spacing:-.055em;margin:8px 0 20px}.auth-copy p:last-child{color:var(--muted);font-size:1.1rem;max-width:580px}.auth-card h2{margin-top:0}.auth-card form,.account-grid form{display:grid;gap:16px}.auth-card .primary,.account-grid .primary{margin-top:4px}.privacy-note{margin-top:18px;padding:14px;background:#f2f8f6;border-radius:12px}.privacy-note p{margin:4px 0 0;color:var(--muted);font-size:.88rem}.history-list{display:grid}.history-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}.history-row:first-child{padding-top:0}.history-row:last-child{padding-bottom:0;border-bottom:0}.history-row h2{margin:3px 0}.history-row p{margin:2px 0;color:var(--muted)}.history-actions{display:flex;align-items:center;gap:10px}.history-actions form{margin:0}.empty-state{text-align:center;padding:48px}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.danger-zone{border-color:#f0c4c0}.saved-trend-panel{margin-bottom:18px}.analysis-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.analysis-choice{display:grid;grid-template-columns:20px 1fr;align-items:start;padding:12px;border:1px solid var(--line);border-radius:12px;background:#f8fbfa}.analysis-choice input{width:auto;margin-top:4px}.analysis-choice small{display:block;color:var(--muted);font-weight:500}.back-link{color:var(--brand);font-weight:750;text-decoration:none}footer{text-align:center;padding:28px 20px;color:var(--muted);border-top:1px solid var(--line);font-size:.82rem}@media(max-width:860px){.auth-shell,.account-grid{grid-template-columns:1fr}.analysis-choice-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.site-header{padding:12px 16px;align-items:flex-start;gap:10px}.site-header nav{gap:9px;font-size:.82rem}.page-shell{padding:34px 16px 60px}.form-grid,.metric-grid,.summary-grid,.trend-grid,.analysis-choice-grid{grid-template-columns:1fr}.result-heading,.history-row{align-items:start;flex-direction:column}.hero h1{font-size:2.7rem}}

.site-header nav .nav-cta{background:var(--brand);color:#fff;padding:8px 13px;border-radius:9px}.site-header nav .nav-cta:hover{background:var(--brand2)}.landing-hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);gap:64px;align-items:center;padding:34px 0 72px}.landing-copy h1{font-size:clamp(3rem,6.3vw,5.6rem);line-height:.98;letter-spacing:-.062em;margin:10px 0 24px;max-width:790px}.landing-lead{font-size:1.18rem;color:var(--muted);max-width:690px;margin:0}.landing-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:28px}.secondary-link{display:inline-block;border:1px solid #a9c2bd;border-radius:11px;padding:12px 19px;background:rgba(255,255,255,.7);color:var(--brand);text-decoration:none;font-weight:800}.secondary-link:hover{border-color:var(--brand);background:#fff}.landing-note{font-size:.86rem;color:var(--muted);max-width:610px;margin:18px 0 0}.result-preview{background:linear-gradient(155deg,#103b3d,#0a625f);color:#fff;border-radius:28px;padding:28px;box-shadow:0 28px 70px rgba(16,43,47,.2);transform:rotate(1deg)}.preview-topline{display:flex;align-items:center;justify-content:space-between;font-weight:800;margin-bottom:22px}.preview-badge{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;background:rgba(255,255,255,.14);padding:5px 9px;border-radius:99px}.preview-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px}.preview-summary div{background:rgba(255,255,255,.09);padding:13px;border-radius:13px}.preview-summary strong,.preview-summary span{display:block}.preview-summary strong{font-size:1.6rem}.preview-summary span{font-size:.7rem;color:#c8e6e1}.preview-row{display:grid;grid-template-columns:1fr auto;gap:2px 14px;padding:13px 2px;border-top:1px solid rgba(255,255,255,.15)}.preview-row span{font-weight:700}.preview-row strong{font-size:.92rem}.preview-row em{grid-column:1/-1;font-style:normal;font-size:.73rem}.preview-ok{color:#93e0b5}.preview-review{color:#ffd28a}.result-preview>p{font-size:.7rem;color:#b8d3cf;margin:14px 0 0}.landing-section{padding:64px 0}.section-heading{max-width:790px;margin-bottom:30px}.section-heading h2,.landing-cta h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.08;letter-spacing:-.045em;margin:7px 0 0}.step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.step-card,.feature-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.step-card>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#dff4ef;color:var(--brand);font-weight:900}.step-card h3,.feature-card h3{margin:20px 0 7px}.step-card p,.feature-card p,.landing-cta p{color:var(--muted);margin:0}.feature-section{border-top:1px solid var(--line)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#e8f6f3;color:var(--brand);font-size:1.3rem;font-weight:900}.landing-cta{display:flex;align-items:center;justify-content:space-between;gap:36px;margin-top:56px;padding:34px}.landing-cta h2{font-size:clamp(1.7rem,3vw,2.6rem);max-width:700px}.landing-cta .landing-actions{flex:0 0 auto;margin:0}@media(max-width:960px){.landing-hero{grid-template-columns:1fr;gap:40px}.result-preview{max-width:620px;transform:none}.step-grid{grid-template-columns:repeat(2,1fr)}.landing-cta{align-items:flex-start;flex-direction:column}.landing-cta .landing-actions{margin-top:0}}@media(max-width:760px){.site-header nav a:first-child{display:none}.landing-hero{padding:18px 0 48px}.landing-copy h1{font-size:3.15rem}.feature-grid,.step-grid{grid-template-columns:1fr}.landing-section{padding:44px 0}.result-preview{padding:20px}.preview-summary{grid-template-columns:1fr}.landing-cta{margin-top:30px;padding:24px}}

/* Resultatvyn återanvänder den första versionens visuella språk: tunna
   kategorirader, statusstaplar och en rund mätpunkt på varje referensskala. */
.classic-results{--result-good:#4c7a45;--result-good-soft:#e1eddc;--result-bad:#b3392f;--result-bad-soft:#f7e1dd;--result-review:#a15c00;--result-review-soft:#fff2d6;--result-neutral:#8a7f65;margin-top:54px;padding:8px 0 36px}.classic-results .results-summary{display:flex;align-items:center;gap:36px;flex-wrap:wrap;padding:26px 0;border-bottom:1px solid var(--line);margin-bottom:12px}.classic-results .summary-stat{display:flex;flex-direction:column}.classic-results .summary-num{font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:2rem;color:var(--ink);line-height:1}.classic-results .summary-of{font-size:1.05rem;color:var(--muted)}.classic-results .summary-label{font-size:.82rem;color:var(--muted);margin-top:4px}.classic-results .summary-stat-warn .summary-num{color:var(--result-bad)}.classic-results .summary-stat-review .summary-num{color:var(--result-review)}.classic-results .result-download{margin-left:auto;border-radius:999px}.classic-results .result-export-links{display:flex;gap:8px;align-items:center;width:100%;justify-content:flex-end;font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:.78rem;color:var(--muted)}.classic-results .result-export-links a{color:var(--brand);font-weight:750}.classic-results .result-saved-note{margin:0 0 28px}.classic-results .status-chart{margin-bottom:26px}.classic-results .status-chart-bar{display:flex;height:10px;border-radius:5px;overflow:hidden;background:var(--line);margin-bottom:12px}.classic-results .status-chart-segment{height:100%}.classic-results .status-chart-normal{background:var(--result-good)}.classic-results .status-chart-abnormal{background:var(--result-bad)}.classic-results .status-chart-review{background:var(--result-review)}.classic-results .status-chart-legend{display:flex;gap:22px;flex-wrap:wrap}.classic-results .legend-item{display:inline-flex;align-items:center;gap:7px;font-size:.85rem;color:var(--muted)}.classic-results .legend-dot{width:9px;height:9px;border-radius:50%;display:inline-block}.classic-results .legend-dot-normal{background:var(--result-good)}.classic-results .legend-dot-abnormal{background:var(--result-bad)}.classic-results .legend-dot-review{background:var(--result-review)}.classic-results .result-clinical-warning{max-width:none;margin:0 0 24px}.classic-results .view-toggle-wrap{margin-bottom:22px}.classic-results .segmented{display:inline-flex;position:relative;border:1px solid #b9cbc7;border-radius:999px;padding:3px;background:var(--bg);width:100%}.classic-results .view-toggle{max-width:340px}.classic-results .segmented input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.classic-results .segmented label{display:block;flex:1;flex-direction:initial;text-align:center;font-size:.88rem;font-weight:650;padding:8px 12px;border-radius:999px;cursor:pointer;color:var(--muted);transition:background .15s ease,color .15s ease}.classic-results .segmented input:checked+label{background:var(--brand);color:#fff}.classic-results .segmented input:focus-visible+label{outline:3px solid rgba(15,130,125,.22);outline-offset:2px}.classic-results .interpretation-box{background:#fff;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:10px;padding:22px 24px;margin-bottom:38px}.classic-results .interpretation-text{margin:0;color:var(--ink);font-size:1rem}.classic-results .block-heading{font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:1.15rem;font-weight:500;margin:0 0 18px}.classic-results .ai-summary-block{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px 24px;margin-bottom:40px;position:relative;overflow:hidden}.classic-results .ai-summary-block:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,var(--brand),#dff4ef 60%,var(--brand))}.classic-results .ai-summary-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.classic-results .ai-summary-head .block-heading{font-size:1rem;margin:0}.classic-results .ai-badge{font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:.66rem;text-transform:uppercase;letter-spacing:.07em;background:#dff4ef;color:var(--brand);padding:4px 10px;border-radius:999px}.classic-results .ai-summary-text{margin:0}.classic-results .ai-summary-unavailable{font-size:.88rem;color:var(--muted);font-style:italic;margin:0}.classic-results .abnormal-block{margin-bottom:44px}.classic-results .abnormal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.classic-results .abnormal-card{border:1px solid var(--line);border-left:3px solid var(--result-bad);border-radius:10px;padding:16px 18px;background:#fff}.classic-results .abnormal-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px;font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:.9rem;margin-bottom:10px}.classic-results .abnormal-value{font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:1.3rem;margin:0}.classic-results .abnormal-value span{font-size:.82rem;color:var(--muted)}.classic-results .abnormal-ref{font-size:.82rem;color:var(--muted);margin:6px 0 0}.classic-results .status-pill{display:inline-block;font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;padding:4px 9px;border-radius:999px;white-space:nowrap;font-weight:800}.classic-results .status-ok{background:var(--result-good-soft);color:#28613a}.classic-results .status-bad{background:var(--result-bad-soft);color:var(--result-bad)}.classic-results .status-review{background:var(--result-review-soft);color:#754300}.classic-results .category-chart{display:flex;flex-direction:column;gap:11px;margin-bottom:34px;padding-bottom:26px;border-bottom:1px solid var(--line)}.classic-results .category-chart-row{display:grid;grid-template-columns:150px 1fr 46px;align-items:center;gap:14px}.classic-results .category-chart-label{font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:.75rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.classic-results .category-chart-bar{display:flex;height:7px;border-radius:4px;overflow:hidden;background:var(--line)}.classic-results .category-chart-fill{height:100%}.classic-results .category-chart-fill-normal{background:var(--result-good)}.classic-results .category-chart-fill-abnormal{background:var(--result-bad)}.classic-results .category-chart-fill-review{background:var(--result-review)}.classic-results .category-chart-count{font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:.74rem;color:var(--muted);text-align:right}.classic-results .category-block{margin-bottom:30px}.classic-results .category-heading{font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--brand);border-bottom:1px solid #b9cbc7;padding-bottom:10px;margin:0 0 4px}.classic-results .biomarker-row{display:grid;grid-template-columns:1.3fr .9fr 1.6fr auto auto;align-items:center;gap:18px;padding:14px 4px;border-bottom:1px solid var(--line);position:relative}.classic-results .biomarker-row:last-child{border-bottom:0}.classic-results .bio-name{display:flex;flex-direction:column}.classic-results .bio-display-name{font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:.92rem;font-weight:700}.classic-results .bio-full-name{font-size:.75rem;color:var(--muted)}.classic-results .bio-value{font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;white-space:nowrap}.classic-results .bio-value-num{font-size:1.02rem;font-weight:700}.classic-results .bio-unit{font-size:.76rem;color:var(--muted);margin-left:4px}.classic-results .bio-gauge{min-width:160px}.classic-results .gauge{width:100%}.classic-results .gauge-track{position:relative;height:8px;background:var(--line);border-radius:4px;margin-bottom:6px}.classic-results .gauge-zone{position:absolute;top:0;height:100%;background:var(--result-good-soft);border-radius:4px}.classic-results .gauge-marker{position:absolute;top:50%;width:15px;height:15px;border-radius:50%;background:var(--result-good);border:2.5px solid #fff;box-shadow:0 0 0 1px #b9cbc7;transform:translate(-50%,-50%)}.classic-results [data-status="HÖGT"] .gauge-marker,.classic-results [data-status="LÅGT"] .gauge-marker{background:var(--result-bad)}.classic-results [data-status="KAN INTE BEDÖMAS"] .gauge-marker,.classic-results [data-status="INGEN REFERENS"] .gauge-marker{background:var(--result-review)}.classic-results .bio-ref-text{font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:.7rem;color:var(--muted)}.classic-results .bio-ref-missing{font-style:italic}.classic-results .bio-info-toggle{width:23px;height:23px;border-radius:50%;border:1px solid #b9cbc7;background:var(--bg);color:var(--muted);font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:.75rem;cursor:pointer;line-height:1}.classic-results .bio-info-toggle:hover{border-color:var(--brand);color:var(--brand)}.classic-results .bio-description{grid-column:1/-1;display:none;font-size:.86rem;color:var(--muted);background:#f7fbfa;border-radius:10px;padding:13px 15px;margin:4px 0 0}.classic-results .bio-description p{margin:0 0 8px}.classic-results .bio-description p:last-child{margin-bottom:0}.classic-results .bio-audit{font-size:.8rem}.classic-results .bio-warning-list{margin:8px 0 0;padding-left:20px;color:var(--warn)}.classic-results .biomarker-row.is-expanded .bio-description{display:block}.classic-results .unmatched-block,.classic-results .missing-note{margin-top:30px}.classic-results .unmatched-block summary{cursor:pointer;font-family:ui-monospace,"SFMono-Regular",Consolas,monospace;font-size:.86rem;color:var(--result-review);padding:10px 0}.classic-results .unmatched-body{padding-top:12px}.classic-results .unmatched-table{width:100%;min-width:520px;border-collapse:collapse;font-size:.88rem}.classic-results .unmatched-table th,.classic-results .unmatched-table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}.classic-results .missing-note{font-size:.84rem;color:var(--muted)}@media(max-width:880px){.classic-results .biomarker-row{grid-template-columns:1fr auto;row-gap:10px}.classic-results .bio-gauge{grid-column:1/-1;min-width:0}.classic-results .result-download{margin-left:0;width:100%;text-align:center}.classic-results .result-export-links{justify-content:flex-start}.classic-results .category-chart-row{grid-template-columns:90px 1fr 40px;gap:8px}.classic-results .category-chart-label{font-size:.67rem}}@media(max-width:560px){.classic-results{margin-top:38px}.classic-results .results-summary{gap:20px}.classic-results .summary-num{font-size:1.7rem}.classic-results .status-chart-legend{gap:12px}.classic-results .view-toggle{max-width:none}.classic-results .abnormal-grid{grid-template-columns:1fr}.classic-results .category-chart-row{grid-template-columns:78px 1fr 34px}.classic-results .bio-status{justify-self:start}}

/* Förfinad sammanfattningsruta. AI-märkning visas endast när texten faktiskt
   kommer från den valfria AI-funktionen. */
.classic-results .result-insight-card {
  display: grid;
  grid-template-columns: minmax(190px, 0.32fr) minmax(0, 1fr);
  overflow: hidden;
  margin-bottom: 40px;
  border: 1px solid #c8ded9;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(19, 71, 71, 0.08);
}

.classic-results .result-insight-head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 18px;
  padding: 28px 24px;
  color: #fff;
  background: linear-gradient(145deg, #0e595c, #0a7772);
}

.classic-results .result-insight-card-ai .result-insight-head {
  background: linear-gradient(145deg, #0b4e52, #0b8179);
}

.classic-results .result-insight-icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.13);
  font-size: 1.35rem;
  line-height: 1;
}

.classic-results .result-insight-title {
  color: #fff;
}

.classic-results .result-insight-label {
  display: block;
  margin-bottom: 7px;
  font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
  font-size: 0.67rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #ccebe6;
}

.classic-results .result-insight-title h3 {
  margin: 0;
  font-size: 1.14rem;
  line-height: 1.3;
  color: #fff;
}

.classic-results .result-insight-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 28px 30px;
  background: linear-gradient(135deg, #f7fcfb, #fff 65%);
}

.classic-results .result-insight-copy {
  max-width: 78ch;
  color: var(--ink);
  font-size: 1rem;
  line-height: 1.7;
}

.classic-results .result-insight-copy p {
  margin: 0 0 12px;
}

.classic-results .result-insight-copy p:last-child {
  margin-bottom: 0;
}

.classic-results .result-insight-note {
  margin: 16px 0 0;
  padding-top: 12px;
  border-top: 1px solid var(--line);
  color: var(--muted);
  font-size: 0.8rem;
}

@media (max-width: 720px) {
  .classic-results .result-insight-card {
    grid-template-columns: 1fr;
  }

  .classic-results .result-insight-head {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding: 21px 22px;
  }

  .classic-results .result-insight-body {
    padding: 22px;
  }
}

/* Lokal PDF-läsning: tydlig återkoppling medan PDF.js/Tesseract körs i
   användarens webbläsare. */
.local-ocr-status {
  display: grid;
  gap: 12px;
  margin: -2px 0 18px;
  padding: 15px 17px;
  border: 1px solid #b8d8d3;
  border-radius: 13px;
  background: #eef8f6;
}

.local-ocr-status[hidden] {
  display: none;
}

.local-ocr-status.is-fallback {
  border-color: #efd49c;
  background: #fff8e8;
}

.local-ocr-status.is-error {
  border-color: #ffc9c5;
  background: #fff1f0;
}

.local-ocr-copy {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: baseline;
}

.local-ocr-copy span {
  color: var(--muted);
  font-size: 0.84rem;
  text-align: right;
}

.local-ocr-status progress {
  width: 100%;
  height: 9px;
  overflow: hidden;
  border: 0;
  border-radius: 99px;
  background: #d8e7e4;
  accent-color: var(--brand);
}

.local-ocr-status progress::-webkit-progress-bar {
  border-radius: 99px;
  background: #d8e7e4;
}

.local-ocr-status progress::-webkit-progress-value {
  border-radius: 99px;
  background: var(--brand);
}

.local-ocr-status progress::-moz-progress-bar {
  border-radius: 99px;
  background: var(--brand);
}

.primary:disabled {
  cursor: wait;
  opacity: 0.7;
}

.local-processing-note {
  max-width: 760px;
  margin: 12px 0 0;
}

@media (max-width: 620px) {
  .local-ocr-copy {
    align-items: flex-start;
    flex-direction: column;
    gap: 3px;
  }

  .local-ocr-copy span {
    text-align: left;
  }
}
