/* Scientific display composer — intentionally inherits the Lab instrument UI. */
.sw-colour-form{gap:16px}
.sw-colour-form fieldset{margin:0;padding:0;border:0}
.sw-colour-form legend{width:100%;margin:0 0 8px;color:var(--sw-muted);font:600 8px var(--sw-mono);letter-spacing:.12em;text-transform:uppercase}
.sw-colour-scope{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--sw-line-strong);border-left:1px solid var(--sw-line-strong)}
.sw-colour-scope label{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:10px;min-height:72px;padding:12px;border-right:1px solid var(--sw-line-strong);border-bottom:1px solid var(--sw-line-strong);background:#0e1917}
.sw-colour-scope label:has(input:checked){z-index:1;background:#161f1d;box-shadow:inset 3px 0 var(--sw-teal)}
.sw-colour-scope input,.sw-colour-schemes input{width:17px;height:17px;margin:0;accent-color:var(--sw-teal)}
.sw-colour-scope strong,.sw-colour-scope small,.sw-colour-schemes strong,.sw-colour-schemes small{display:block}
.sw-colour-scope strong{font:600 11px var(--sw-condensed);letter-spacing:.03em;text-transform:uppercase}
.sw-colour-scope small{margin-top:3px;color:var(--sw-muted);font:500 8px/1.35 var(--sw-mono)}
.sw-colour-schemes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--sw-line-strong);border-left:1px solid var(--sw-line-strong)}
.sw-colour-schemes legend{grid-column:1/-1}
.sw-colour-schemes label{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);align-content:start;gap:10px;min-height:112px;padding:12px;border-right:1px solid var(--sw-line-strong);border-bottom:1px solid var(--sw-line-strong);background:rgba(14,25,23,.9)}
.sw-colour-schemes label::after{content:attr(data-scheme-kind);position:absolute;right:8px;top:8px;color:var(--sw-faint);font:600 6px var(--sw-mono);letter-spacing:.1em;text-transform:uppercase}
.sw-colour-schemes label:has(input:checked){z-index:1;background:#161f1d;box-shadow:inset 3px 0 var(--sw-teal)}
.sw-colour-schemes strong{padding-right:44px;font:600 11px var(--sw-condensed);letter-spacing:.03em;text-transform:uppercase}
.sw-colour-schemes small{grid-column:2;margin-top:1px;color:var(--sw-muted);font-size:8px;line-height:1.45}
.sw-colour-review{display:grid;grid-template-columns:minmax(150px,.75fr) minmax(260px,1.25fr);align-items:center;gap:16px;padding:14px;border:1px solid var(--sw-line-strong);border-left:4px solid var(--sw-acid);background:var(--sw-deep);color:#c4d2cc}
.sw-colour-review>div:first-child>span{display:block;color:var(--sw-acid);font:600 7px var(--sw-mono);letter-spacing:.14em;text-transform:uppercase}
.sw-colour-review>div:first-child>strong{display:block;margin-top:5px;font:600 16px var(--sw-condensed);text-transform:uppercase}
.sw-colour-review p{margin:5px 0 0;color:#67706c;font:500 7.5px/1.45 var(--sw-mono)}
.sw-colour-review>small{grid-column:1/-1;color:#67706c;font:500 7.5px/1.45 var(--sw-mono)}
.sw-colour-gradient{height:18px;border:1px solid rgba(14,25,23,.35);background:linear-gradient(90deg,var(--sw-gradient-a),var(--sw-gradient-b),var(--sw-gradient-c))}
.sw-colour-gradient-labels{display:flex!important;justify-content:space-between;margin-top:5px;color:#c4d2cc;font:500 7px var(--sw-mono)}
.sw-colour-key{display:flex;flex-wrap:wrap;gap:7px 11px}
.sw-colour-key span{display:inline-flex;align-items:center;gap:5px;color:#111816;font:500 7px var(--sw-mono);text-transform:capitalize}
.sw-colour-key i{width:10px;height:10px;border:1px solid rgba(14,25,23,.28);background:linear-gradient(135deg,#3f9d8a,#6484b8)}
.sw-colour-key--dynamic i{width:54px;background:linear-gradient(90deg,#3f9d8a,#6484b8,#c08346,#8b7ab5,#b79a22)}

@media(max-width:780px){
  .sw-colour-scope,.sw-colour-schemes,.sw-colour-review{grid-template-columns:1fr}
  .sw-colour-scope label,.sw-colour-schemes label{min-height:72px}
  .sw-colour-review>small{grid-column:1}
}
