/* ============================================================
   NumberBench — Checkup pages (multi-calculator situation view)
   Built on the existing token system (styles.css + refresh.css).
   Number roles kept: blue #2456C6 = your number, gold #8F6A0C = benchmark.
   ============================================================ */
.checkup .ck-head{max-width:760px}
.checkup .ck-eyebrow{margin:0 0 8px;color:#8F6A0C;font-size:12px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}
.checkup h1{font-family:var(--display,"Schibsted Grotesk",var(--font));font-size:clamp(30px,3.4vw,42px);letter-spacing:-.035em;color:var(--navy,#17150F);margin:4px 0 10px;font-weight:700}
.checkup .lead{font-size:16.5px;color:var(--ink-2);max-width:680px;line-height:1.55;margin:0 0 14px}

/* shared-context bar */
.ck-context{background:var(--panel,#F7F5EF);border:1px solid var(--line,#EBE8DF);border-radius:14px;padding:16px 20px;margin:14px 0 26px}
.ck-context .ckc-lab{font-size:11.5px;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:var(--mut);margin:0 0 12px;display:flex;align-items:center;gap:8px}
.ck-context .ckc-lab::before{content:"";width:7px;height:7px;border-radius:50%;background:#2456C6;flex:none}
.ck-context .ckc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px 16px}

/* left column: one card per metric/calculator */
.ck-calc{scroll-margin-top:88px}
.ck-calc .cc-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0 0 4px}
.ck-calc .cc-name{font-family:var(--display,"Schibsted Grotesk",var(--font));font-size:18px;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.ck-calc .cc-tag{font-size:11px;font-weight:600;color:var(--mut);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}
.ck-calc .cc-sub{font-size:13px;color:var(--mut);margin:0 0 14px;line-height:1.5}
.ck-calc .cc-result{margin-top:16px;background:var(--panel-2,#FAF9F4);border:1px solid var(--line);border-radius:12px;padding:16px 18px}
.ck-cr-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ck-cr-val{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:26px;font-weight:600;letter-spacing:-.03em;color:#2456C6;line-height:1.1}
.ck-cr-bench{font-size:12.5px;color:var(--mut)}
.ck-cr-bench b{color:#8F6A0C;font-weight:650}
.ck-cr-verdict{margin:12px 0 2px;font-size:13.5px;color:var(--ink-2);line-height:1.45;display:flex;gap:8px;align-items:baseline}
.ck-cr-verdict::before{content:"";width:8px;height:8px;border-radius:50%;flex:none;position:relative;top:5px;background:var(--mut)}
.ck-cr-verdict.good::before{background:var(--good,#15803D)}
.ck-cr-verdict.ok::before{background:var(--warn,#B45309)}
.ck-cr-verdict.watch::before{background:var(--bad,#B91C1C)}

/* the benchmark meter (mirrors .mbench look) */
.ck-bar{margin:16px 0 0}
.ck-track{position:relative;height:12px;border-radius:7px}
.ck-bar.sm .ck-track{height:8px;border-radius:5px}
.ck-mark{position:absolute;top:-5px;width:4px;height:22px;border-radius:3px;background:#2456C6;transform:translateX(-50%);transition:left .45s cubic-bezier(.34,1.2,.5,1)}
.ck-bar.sm .ck-mark{top:-4px;height:16px;width:3px}
.ck-mark::after{content:attr(data-you);position:absolute;bottom:26px;left:50%;transform:translateX(-50%);background:#2456C6;color:#fff;font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:600;font-size:11.5px;padding:3px 8px;border-radius:6px;white-space:nowrap}
.ck-bar.sm .ck-mark::after{display:none}
.ck-tick{position:absolute;top:-3px;height:18px;width:2px;background:#8F6A0C;transform:translateX(-50%);transition:left .45s}
.ck-bar.sm .ck-tick{top:-2px;height:12px}
.ck-cap{display:flex;justify-content:space-between;margin-top:12px;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--faint)}
.ck-bar.sm .ck-cap{margin-top:8px}

/* sticky scorecard (sidebar) */
.ck-score{background:var(--card,#fff);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-card);overflow:hidden}
.ck-score-top{padding:20px 20px 18px;background:linear-gradient(180deg,#FBF9F2,#fff);border-bottom:1px solid var(--line)}
.ck-score-top .cst-lab{font-size:11px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:#8F6A0C;margin:0 0 6px}
.ck-score-top .cst-big{font-family:var(--display,"Schibsted Grotesk",var(--font));font-size:26px;font-weight:700;letter-spacing:-.02em;color:var(--navy);line-height:1.1}
.ck-score-top .cst-big b{color:#2456C6}
.ck-score-top .cst-verdict{margin:8px 0 0;font-size:13px;color:var(--ink-2);line-height:1.45}
.ck-score-top .cst-fix{margin:12px 0 0;font-size:12px;color:var(--ink-2);background:#fff;border:1px solid var(--line);border-radius:9px;padding:9px 11px;line-height:1.4}
.ck-score-top .cst-fix b{color:var(--bad,#B91C1C);font-weight:650}
.ck-score-rows{padding:6px 8px 8px}
.ck-row{display:block;width:100%;text-align:left;background:none;border:0;border-radius:10px;padding:12px 12px;cursor:pointer;font-family:inherit;transition:background .12s}
.ck-row:hover{background:var(--panel,#F7F5EF)}
.ck-row+.ck-row{border-top:1px solid var(--line)}
.ck-row-top{display:flex;align-items:center;gap:9px}
.ck-row-dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--mut)}
.ck-row-dot.good{background:var(--good,#15803D)}.ck-row-dot.ok{background:var(--warn,#B45309)}.ck-row-dot.watch{background:var(--bad,#B91C1C)}
.ck-row-name{font-size:13px;font-weight:600;color:var(--ink);flex:1;letter-spacing:-.01em}
.ck-row-val{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:13.5px;font-weight:600;color:#2456C6;letter-spacing:-.02em}
.ck-row-bench{margin:5px 0 0 17px;font-size:11px;color:var(--mut);line-height:1.4}
.ck-row-bench b{color:#8F6A0C;font-weight:650}
.ck-score-foot{padding:12px 16px;border-top:1px solid var(--line);display:flex;gap:8px;flex-wrap:wrap}
.ck-score-foot button{flex:1;font-family:inherit;font-size:12px;font-weight:550;color:var(--ink-2);background:#fff;border:1px solid var(--line-2);border-radius:8px;padding:9px 10px;cursor:pointer;transition:.12s}
.ck-score-foot button:hover{border-color:var(--ink);color:var(--ink)}

/* status chip (used in scorecard header + optional) */
.ck-chip{display:inline-block;font-size:11px;font-weight:650;border-radius:999px;padding:3px 9px;letter-spacing:.01em}
.ck-chip.good{color:var(--good,#15803D);background:var(--good-bg,#F0FDF4);border:1px solid var(--good-line,#BBF7D0)}
.ck-chip.ok{color:var(--warn,#B45309);background:var(--warn-bg,#FFFBEB);border:1px solid var(--warn-line,#FDE68A)}
.ck-chip.watch{color:var(--bad,#B91C1C);background:var(--bad-bg,#FEF2F2);border:1px solid var(--bad-line,#FECACA)}

/* on mobile the scorecard moves under the calcs but we surface a summary up top */
@media(max-width:900px){
  .checkup .layout .sidebar{position:static;order:3}
  .ck-score{position:sticky;top:70px}
}
.ck-note{font-size:12px;color:var(--mut);margin:10px 0 0;line-height:1.5}

/* checkups index */
.ck-index-grid{grid-template-columns:repeat(auto-fill,minmax(322px,1fr));gap:16px;margin-top:8px}
.ck-index-grid .calc-card-link{padding:22px 24px;display:flex;flex-direction:column}
.ck-index-grid h3{font-family:var(--display,"Schibsted Grotesk",var(--font));font-size:18px;color:var(--navy,#17150F);margin:0 0 6px;letter-spacing:-.01em}
.ck-index-grid p{font-size:13.5px;color:var(--mut);line-height:1.5;margin:0 0 14px}
.ck-idx-go{margin-top:auto;font-size:13px;font-weight:650;color:#8F6A0C}
.ck-index-how{margin:40px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ck-index-how div{background:var(--panel,#F7F5EF);border:1px solid var(--line);border-radius:13px;padding:18px 20px}
.ck-index-how b{display:block;font-family:var(--display,"Schibsted Grotesk",var(--font));font-size:15px;color:var(--navy);margin-bottom:5px}
.ck-index-how p{margin:0;font-size:13px;color:var(--mut);line-height:1.5}
@media(max-width:760px){.ck-index-how{grid-template-columns:1fr}}
