/* Compound page (2026-11-02): the "lab data sheet" for /compound/<name>, on top of
   the shared lab-sheet stylesheet ck-lab-v20261102.css (ck-l-). Only what is
   compound-specific lives here, prefixed ck-cp-. Every colour is a --ck-* token. */

.ck-cp-name { overflow-wrap: anywhere; }
.ck-cp-smell { font-size: 19px; margin: 0; color: var(--ck-fg); }
.ck-cp-smell span { font: 500 12px var(--ck-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--ck-fg3); margin-right: 8px; }
.ck-cp-plate { display: flex; flex-direction: column; align-items: center; justify-content: center; }
.ck-cp-plate img { display: block; max-width: 100%; height: auto; max-height: 220px; mix-blend-mode: multiply; }
.ck-cp-plate figcaption { font: 400 12px var(--ck-mono); color: var(--ck-fg3); text-align: center; margin-top: 8px; }
.ck-cp-plate figcaption a { color: var(--ck-fg3); }
.ck-l-spec.ck-cp-spec { grid-template-columns: repeat(8, minmax(0, 1fr)); }
@media (max-width: 1000px) { .ck-l-spec.ck-cp-spec { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 520px) { .ck-l-spec.ck-cp-spec { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.ck-cp-spec dd a { color: var(--ck-fg); text-decoration: underline; text-decoration-color: var(--ck-line); text-underline-offset: 3px; }
.ck-cp-api { font-size: 13px; color: var(--ck-fg3); margin: 0; }

/* ---- Smell ruler ----------------------------------------------------------- */
.ck-cp-rulersec { background: var(--ck-card); border-bottom: 1px solid var(--ck-line); }
.ck-cp-rulersec > .ck-wrap { padding-top: 26px; padding-bottom: 10px; }
.ck-cp-rh { display: flex; flex-wrap: wrap; gap: 6px 28px; align-items: baseline; }
.ck-cp-rh h2 { font: 400 30px/1.15 var(--ck-display); margin: 0; color: var(--ck-fg); }
.ck-cp-rh p { margin: 0; color: var(--ck-fg2); font-size: 15px; max-width: 46em; }
.ck-cp-ruler { display: block; width: 100%; min-width: 720px; height: auto; margin-top: 6px; }
.ck-cp-ruler .z0 { fill: var(--ck-band); stroke: var(--ck-line); }
.ck-cp-ruler .z1 { fill: var(--ck-tint); stroke: var(--ck-line); }
.ck-cp-ruler .z2 { fill: var(--ck-sage); }
.ck-cp-ruler .t { stroke: var(--ck-fg); stroke-width: 1.2; }
.ck-cp-ruler .tm { stroke: var(--ck-fg3); stroke-width: .8; }
.ck-cp-ruler .tl { font: 400 12px var(--ck-mono); fill: var(--ck-fg2); }
.ck-cp-ruler .zl { font: 500 11px var(--ck-mono); letter-spacing: .12em; fill: var(--ck-fg3); }
.ck-cp-ruler .k { stroke-width: 1; }
.ck-cp-ruler .k.on { stroke: var(--ck-fg); }
.ck-cp-ruler .k.off { stroke: var(--ck-fg3); stroke-dasharray: 2 2; }
.ck-cp-ruler .d.on { fill: var(--ck-copper); stroke: var(--ck-fg); stroke-width: 1; }
.ck-cp-ruler .d.off { fill: var(--ck-card); stroke: var(--ck-fg3); stroke-width: 1.2; }
.ck-cp-ruler .f { font: 600 14px var(--ck-body); fill: var(--ck-fg); }
.ck-cp-ruler .f.off { fill: var(--ck-fg3); font-weight: 400; }
.ck-cp-ruler .n { font: 500 12px var(--ck-mono); fill: var(--ck-copper-ink); }
.ck-cp-ruler .f.off .n { fill: var(--ck-fg3); }

/* ---- Panels ---------------------------------------------------------------- */
.ck-cp-panels { display: grid; grid-template-columns: minmax(0, 1fr); border: 1px solid var(--ck-fg); background: var(--ck-card); }
.ck-cp-panels > .ck-l-panel { border: 0; }
.ck-cp-panels > .ck-l-panel + .ck-l-panel { border-top: 1px solid var(--ck-fg); }
@media (min-width: 900px) {
  .ck-cp-panels { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ck-cp-panels > .ck-l-panel + .ck-l-panel { border-top: 0; border-left: 1px solid var(--ck-fg); }
}
.ck-cp-thr { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.ck-cp-thr li { display: grid; grid-template-columns: 84px minmax(0, 1fr) 52px; gap: 8px; align-items: center; font-size: 13px; color: var(--ck-fg2); }
.ck-cp-thr svg { width: 100%; height: 16px; display: block; }
.ck-cp-thr .r { stroke: var(--ck-sage-dot); stroke-width: 6; }
.ck-cp-thr .r.off { stroke: var(--ck-line); }
.ck-cp-thr .m { stroke: var(--ck-fg); stroke-width: 2.5; }
.ck-cp-thr em { font-style: normal; font-family: var(--ck-mono); font-size: 12.5px; color: var(--ck-fg); text-align: right; }
.ck-cp-thr small { display: block; font: 400 10.5px var(--ck-mono); color: var(--ck-fg3); }
.ck-cp-axis { display: flex; justify-content: space-between; font: 400 10.5px var(--ck-mono); color: var(--ck-fg3);
  margin: 4px 52px 0 92px; }
.ck-cp-stack { display: flex; height: 26px; border: 1px solid var(--ck-fg); }
.ck-cp-stack i { display: block; border-right: 1px solid var(--ck-card); min-width: 2px; }
.ck-cp-stack i:last-child { border-right: 0; }
.ck-cp-f1 { background: var(--ck-sage); } .ck-cp-f2 { background: var(--ck-copper); } .ck-cp-f3 { background: var(--ck-sage-dot); }
.ck-cp-f4 { background: var(--ck-copper-soft); } .ck-cp-f5 { background: var(--ck-sage-ink); } .ck-cp-f6 { background: var(--ck-copper-ink); }
.ck-cp-f7 { background: var(--ck-tint); } .ck-cp-f8 { background: var(--ck-fg3); }
.ck-cp-skey { list-style: none; margin: 10px 0 0; padding: 0; display: grid; gap: 4px; }
.ck-cp-skey li { display: grid; grid-template-columns: 12px minmax(0, 1fr) auto; gap: 8px; align-items: center; font-size: 13px; color: var(--ck-fg2); }
.ck-cp-skey li i { width: 12px; height: 12px; display: block; border: 1px solid var(--ck-line); box-sizing: border-box; }
.ck-cp-skey b { font: 500 12.5px var(--ck-mono); color: var(--ck-fg); }
.ck-cp-spk { display: block; width: 100%; max-width: 360px; height: auto; margin: 0 auto; }
.ck-cp-spk path { stroke: var(--ck-sage); fill: none; }
.ck-cp-spk circle { fill: var(--ck-fg); }
.ck-cp-spk .hub { fill: var(--ck-copper); stroke: var(--ck-fg); stroke-width: 1; }
.ck-cp-spk text { font: 500 13px var(--ck-body); fill: var(--ck-fg); }
.ck-cp-spk a text { fill: var(--ck-sage-ink); text-decoration: underline; }
.ck-cp-spk tspan { font: 500 12px var(--ck-mono); fill: var(--ck-fg3); }
.ck-cp-spk .hubt { font: 600 11px var(--ck-mono); fill: #FFFFFF; }
.ck-cp-empty { font-size: 14px; color: var(--ck-fg3); margin: 0; }

/* ---- Text column ----------------------------------------------------------- */
.ck-cp-article { max-width: 820px; display: flex; flex-direction: column; gap: 34px; }
.ck-cp-article h2 { font: 400 28px/1.15 var(--ck-display); margin: 0 0 10px; color: var(--ck-fg); }
.ck-cp-article h3 { font: 500 12px var(--ck-mono); letter-spacing: .1em; text-transform: uppercase; color: var(--ck-copper-ink); margin: 18px 0 8px; }
.ck-cp-article p { margin: 0 0 10px; color: var(--ck-fg2); font-size: 16px; line-height: 1.6; }
.ck-cp-article .ck-l-fine { font-size: 12px; }
.ck-cp-box { border: 1px solid var(--ck-fg); background: var(--ck-card); padding: 16px; }
.ck-cp-warn { border: 1px solid var(--ck-copper); background: var(--ck-tint); padding: 14px 16px; font-size: 14px; color: var(--ck-fg2); }
.ck-cp-warn b { color: var(--ck-fg); }
.ck-cp-tw { overflow-x: auto; border: 1px solid var(--ck-line); background: var(--ck-card); }
.ck-cp-t { border-collapse: collapse; width: 100%; font-size: 14px; font-variant-numeric: tabular-nums; }
.ck-cp-t caption { text-align: left; font: 500 12px var(--ck-mono); letter-spacing: .08em; text-transform: uppercase; padding: 10px 12px; color: var(--ck-fg); }
.ck-cp-t th, .ck-cp-t td { text-align: left; padding: 8px 12px; border-top: 1px solid var(--ck-line); vertical-align: top; }
.ck-cp-t th { font: 500 11px var(--ck-mono); letter-spacing: .06em; color: var(--ck-fg3); text-transform: uppercase; }
.ck-cp-t td.num, .ck-cp-t th.num { text-align: right; font-family: var(--ck-mono); font-size: 13px; }
.ck-cp-t th.num { font-size: 11px; }
.ck-cp-t .dim { color: var(--ck-fg3); }
.ck-cp-t .hi { color: var(--ck-copper-ink); font-weight: 600; }
.ck-cp-t .ok { color: var(--ck-sage-ink); font-weight: 600; }
.ck-cp-t .flag td { font-size: 12px; color: var(--ck-copper-ink); border-top: 0; padding-top: 0; }
.ck-cp-pill { display: inline-block; font: 600 10px var(--ck-mono); letter-spacing: .08em; text-transform: uppercase;
  padding: 2px 6px; border: 1px solid currentColor; color: var(--ck-sage-ink); margin-left: 4px; white-space: nowrap; }
.ck-cp-pill.cop { color: var(--ck-copper-ink); }
.ck-cp-pill.dim { color: var(--ck-fg3); }

/* found-in grid */
.ck-cp-found { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 210px), 1fr));
  border-top: 1px solid var(--ck-line); border-left: 1px solid var(--ck-line); }
.ck-cp-found li { border-right: 1px solid var(--ck-line); border-bottom: 1px solid var(--ck-line); background: var(--ck-card); min-width: 0; }
.ck-cp-found a { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; padding: 9px 12px; min-height: 44px;
  box-sizing: border-box; text-decoration: none; color: var(--ck-fg); }
.ck-cp-found a:hover { background: var(--ck-tint); }
.ck-cp-found b { font-weight: 600; font-size: 15px; text-transform: capitalize; display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ck-cp-found small { display: block; font: 400 11px var(--ck-mono); color: var(--ck-fg3); }
.ck-cp-found small.m { color: var(--ck-sage-ink); }
.ck-cp-found .thin b { font-weight: 400; color: var(--ck-fg2); }
.ck-cp-found .r { flex-shrink: 0; white-space: nowrap; font: 400 11px var(--ck-mono); color: var(--ck-fg3); }
.ck-cp-found .r .p { color: var(--ck-sage-ink); }
.ck-cp-pro { background: var(--ck-tint); border: 1px solid var(--ck-fg); padding: 20px; }
.ck-cp-pro h2 { margin-top: 0; }
.ck-cp-pro .ck-l-cta { margin-top: 12px; }

.ck-cp-faq details { border-bottom: 1px solid var(--ck-line); padding: 10px 0; }
.ck-cp-faq summary { cursor: pointer; font-weight: 600; font-size: 16px; color: var(--ck-fg); min-height: 28px; }
.ck-cp-faq p { margin: 8px 0 0; }
.ck-cp-desc-rows { display: grid; gap: 6px; margin: 8px 0 0; padding: 0; list-style: none; }
.ck-cp-desc-rows li { display: grid; grid-template-columns: minmax(0, 1fr) 110px; gap: 10px; align-items: center; font-size: 14px; color: var(--ck-fg2); }
.ck-cp-desc-rows li b { color: var(--ck-fg); font-weight: 600; }
.ck-cp-desc-rows i { display: block; height: 6px; background: var(--ck-line); position: relative; }
.ck-cp-desc-rows i span { position: absolute; left: 0; top: 0; bottom: 0; background: var(--ck-sage-ink); }
.ck-cp-search { border: 1px solid var(--ck-line); background: var(--ck-card); padding: 14px 16px; }
@media (max-width: 520px) {
  .ck-cp-thr li { grid-template-columns: 72px minmax(0, 1fr) 48px; }
  .ck-cp-axis { margin: 4px 48px 0 80px; }
  .ck-cp-article h2 { font-size: 24px; }
}
@media (max-width: 520px) { .ck-cp-plate { max-width: 260px; } .ck-cp-plate img { max-height: 150px; } }
