/* scoreboard section - extracted for modularity */
  /* Scoreboard */
  .score{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
  .scorecard{flex:1;min-width:120px;border:1px solid var(--st2);border-radius:10px;padding:10px 12px;
    background:var(--chrome);cursor:pointer;text-align:left}
  .scorecard .n{font-size:22px;font-weight:600}
  .scorecard .k{color:var(--fg2);font-size:12px;margin-top:2px}
  .scorecard.met .n{color:var(--green)} .scorecard.short .n{color:var(--red)}
  .scorecard.watch .n{color:var(--amber)} .scorecard.over .n{color:var(--red)}
  .scorecard .who{color:var(--fg3);font-size:11px;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .balance-panel{border:1px solid var(--st2);border-radius:10px;overflow:hidden}
  .balance-panel.imbalanced{border-color:var(--amber)}
  .ratio-row{border-top:1px solid var(--st3);padding:8px 12px}
  .ratio-row:first-child{border-top:none}
  .ratio-row.binding{background:rgba(255,180,0,.06)}
  .ratio-row summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
  .ratio-row summary::-webkit-details-marker{display:none}
  .ratio-nm{font-weight:600;flex:1 1 140px}
  .ratio-val{font-variant-numeric:tabular-nums}
  .ratio-band{font-size:11px}
  #assess-overview{margin-top:18px}
  .site-subtabs,
  .assess-subtabs{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0 16px;padding:5px;border:1px solid var(--st3);
    border-radius:999px;background:color-mix(in srgb,var(--st3) 28%,var(--chrome));width:fit-content;max-width:100%}
  .site-subtab,
  .assess-subtab{border:1px solid transparent;background:transparent;color:var(--fg2);border-radius:999px;padding:6px 14px;
    font-size:12px;font-weight:550;cursor:pointer;transition:color .12s ease,background .12s ease,border-color .12s ease,box-shadow .12s ease}
  .site-subtab.active,
  .assess-subtab.active{color:#fff;background:var(--gradient-accent);border-color:transparent;box-shadow:0 1px 4px color-mix(in srgb,var(--accent) 35%,transparent)}
  .site-subtab:hover:not(.active),
  .assess-subtab:hover:not(.active){color:var(--fg);background:color-mix(in srgb,var(--chrome) 88%,var(--fill2));border-color:var(--st2)}
  .site-subtab:focus-visible,
  .assess-subtab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
  .assess-subpane[hidden]{display:none!important}
  .params-subtabs{margin-top:4px}
  .ui-score-hero-ring-btn{border:0;background:transparent;padding:0;cursor:pointer;border-radius:50%;line-height:0}
  .ui-score-hero-ring-btn:hover{opacity:.9}
  .ui-score-hero-ring-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

  table{width:100%;border-collapse:collapse;border:1px solid var(--st2);border-radius:10px;
    overflow:hidden;margin:8px 0;font-size:13px}
  th,td{text-align:left;padding:8px 12px;border-bottom:1px solid var(--st3)}
  th{color:var(--fg2);font-weight:500;background:var(--chrome);font-size:12px;position:sticky;top:0}
  tbody tr:nth-child(even){background:var(--fill3)}
  tbody tr:last-child td{border-bottom:0}
  td.r,th.r{text-align:right;font-variant-numeric:tabular-nums}
  th.sortable{cursor:pointer;user-select:none} th.sortable:hover{color:var(--fg)}
  th .arr{opacity:.6;font-size:10px}
  .dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:8px;vertical-align:middle}
  .dot.success{background:var(--green)} .dot.warning{background:var(--amber)}
  .dot.danger{background:var(--red)} .dot.info{background:var(--blue)} .dot.neutral{background:var(--fg4)}
  .note{color:var(--fg2);font-size:12px}
  .grouprow td{background:var(--fill2);color:var(--fg2);font-weight:600;font-size:11px;
    text-transform:uppercase;letter-spacing:.04em}
  .pillstatus{font-size:10.5px;padding:2px 8px;border-radius:6px;border:1px solid var(--st1);white-space:nowrap}
  .pillstatus.success{color:var(--green);border-color:#3FA26655}
  .pillstatus.warning{color:var(--amber);border-color:#F1B46755}
  .pillstatus.danger{color:var(--red);border-color:#E5707E55}
  .pillstatus.info{color:var(--blue);border-color:#7BAFE955}
  .pillstatus.neutral{color:var(--fg3)}
  .chips-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:10px 0 4px}
  .bandcell{color:var(--fg3);font-size:11.5px;font-variant-numeric:tabular-nums}

  /* Range bar */
  .rbwrap{display:block}
  .rbar{position:relative;height:15px;background:var(--fill3);border-radius:5px;overflow:hidden}
  .rbfill{height:100%;border-radius:5px 0 0 5px;opacity:.9}
  .rbmark{position:absolute;top:0;bottom:0;width:0;z-index:2}
  .rbmark.target{border-left:1.5px dashed var(--fg)}
  .rbmark.cap{border-left:1.6px solid var(--red)}
  .rbzs{position:relative;height:4px;margin-top:2px}
  .rbzone{position:absolute;height:100%;background:var(--green);opacity:.5;border-radius:2px}
  .rblegend{color:var(--fg3);font-size:11px;display:flex;gap:14px;flex-wrap:wrap;margin:2px 0 10px}
  .rblegend span{display:inline-flex;align-items:center;gap:5px}
  .lg{width:14px;height:0;display:inline-block;vertical-align:middle}
  .lg.t{border-top:1.5px dashed var(--fg)} .lg.c{border-top:1.6px solid var(--red)}
  .lg.z{height:6px;width:14px;background:var(--green);opacity:.5;border-radius:2px}

  .chart{border:1px solid var(--st2);border-radius:10px;padding:16px 16px 12px;background:var(--chrome);margin:8px 0}
  .bar-row{display:grid;grid-template-columns:150px 1fr 64px;gap:10px;align-items:center;margin:7px 0}
  .bar-row .name{color:var(--fg2);font-size:12px;text-align:right}
  .gap-row .name{text-align:left;color:var(--fg)}
  .track{position:relative;height:18px;background:var(--fill3);border-radius:5px;overflow:visible}
  .gap-track{height:20px;overflow:hidden;border-radius:6px}
  .gap-fill{position:relative;height:100%;min-width:2px;border-radius:6px;overflow:hidden}
  .gap-fill.success{background:var(--tone-success-gradient)} .gap-fill.warning{background:var(--tone-warning-gradient)}
  .gap-fill.danger{background:var(--tone-danger-gradient)} .gap-fill.info{background:var(--tone-info-gradient)}
  .gap-solid{height:100%;width:100%;border-radius:6px;opacity:.92}
  .gap-solid.success{background:var(--tone-success-gradient)} .gap-solid.warning{background:var(--tone-warning-gradient)}
  .gap-solid.danger{background:var(--tone-danger-gradient)} .gap-solid.info{background:var(--tone-info-gradient)}
  .gap-solid.neutral{background:var(--tone-neutral-gradient)}
  .gap-inline-stack{height:100%;margin:0;border-radius:6px;display:flex}
  .gap-inline-stack .seg{height:100%;cursor:pointer;min-width:1px}
  .gap-inline-stack .seg:hover{filter:brightness(1.12)}
  .bar{height:100%;border-radius:5px;opacity:.92}
  .bar.success{background:var(--tone-success-gradient)} .bar.warning{background:var(--tone-warning-gradient)}
  .bar.danger{background:var(--tone-danger-gradient)} .bar.info{background:var(--tone-info-gradient)}
  .target{position:absolute;top:-3px;bottom:-3px;width:0;border-left:1.5px dashed var(--amber)}
  .target span{position:absolute;top:-15px;left:3px;color:var(--amber);font-size:10px;white-space:nowrap}
  .bandmark{position:absolute;top:4px;bottom:4px;background:var(--fill1);border-radius:3px;opacity:.7}
  .bar-row .val{font-size:12px;font-variant-numeric:tabular-nums;color:var(--fg)}

  .card{border:1px solid var(--st2);border-radius:10px;background:var(--chrome);overflow:hidden}
  .card .hd{padding:8px 14px;border-bottom:1px solid var(--st3);color:var(--fg2);font-size:12px;font-weight:600;
    display:flex;justify-content:space-between;align-items:center}
  .card .bd{padding:12px 14px} .card .bd p{margin:5px 0;font-size:13px;color:var(--fg)}
  .win h3{color:var(--fg)} .win p{color:var(--fg2);font-size:12.5px;margin:2px 0}

  /* Distinct highlight blocks (D3/K2, Iron) */
  .hl{border:1px solid var(--st2);border-radius:12px;background:var(--chrome);margin:12px 0;overflow:hidden}
  .hl .hlhd{display:flex;align-items:center;gap:10px;padding:11px 16px;border-bottom:1px solid var(--st3);
    background:linear-gradient(0deg,transparent,var(--fill3))}
  .hl .hlhd .ic{width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:14px}
  .hl .hlhd .ti{font-weight:600;font-size:15px} .hl .hlhd .rda{margin-left:auto;font-size:12px;font-variant-numeric:tabular-nums}
  .hl .hlbd{padding:12px 16px}
  .hl.d3 .ic{background:#7BAFE926;color:var(--blue)}
  .hl.iron .ic{background:#E5707E26;color:var(--red)}
  .hl.retinol .ic{background:#F1B46726;color:var(--amber)}
  .subgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .subblock{border:1px solid var(--st2);border-radius:9px;padding:10px 12px;background:var(--fill3)}
  .subblock h4{margin:0 0 6px;font-size:12px;color:var(--fg2);font-weight:600;text-transform:uppercase;letter-spacing:.03em}

