/* ============================================================
   /crops · /crops/:slug — คลังพืช · v0.2
   ตารางพืช (กลุ่มสี · ค้นหา · ชี้แล้วการ์ดขยาย) + แผ่นข้อมูลพืชหนึ่งแผ่นต่อหนึ่งพืช (พื้นมืดสะอาด)
   โหลดต่อท้าย quiet-precision.css?v=0.2 + deeptech.css?v=0.1 · ใช้ตัวแปร --qp-* เท่านั้น · คลาสเฉพาะหน้าขึ้นต้น c-
   ============================================================ */

.dt [hidden] { display: none !important; }
.c-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }

/* สีกลุ่มพืช (6 กลุ่ม · จากชุดสีกราฟกลาง) */
.c-g0 { --c: var(--qp-muted); }
.c-g1 { --c: var(--qp-data-1); }   /* กินใบ */
.c-g2 { --c: var(--qp-data-2); }   /* กินทั้งต้น */
.c-g3 { --c: var(--qp-data-5); }   /* กินผล */
.c-g4 { --c: var(--qp-data-4); }   /* ดอก */
.c-g5 { --c: var(--qp-data-3); }   /* กินหัว */
.c-g6 { --c: var(--qp-info); }     /* พืชพิเศษ */

/* ระดับความมั่นใจผลผลิต A–D */
.c-cf { display: inline-grid; place-items: center; min-width: 18px; height: 18px; padding: 0 4px; border: 1px solid var(--qp-line-strong); border-radius: 3px; font: 500 10px/1 var(--qp-font-mono); color: var(--qp-ink-2); text-decoration: none; }
.c-cf--A { color: var(--qp-ok); border-color: color-mix(in srgb, var(--qp-ok) 60%, transparent); }
/* v0.3.1: ธีมสว่าง ป้าย A (--qp-ok) และรหัส 2 ตัวบนการ์ด (--c) ได้ 4.43 → ผสม ink ให้เข้มขึ้น (ธีมมืดผ่านอยู่แล้ว ไม่แตะ) */
html[data-qp-theme="light"] .c-cf--A { color: color-mix(in srgb, var(--qp-ok) 72%, var(--qp-ink)); }
html[data-qp-theme="light"] .c-el__sym { color: color-mix(in srgb, var(--c) 80%, var(--qp-ink)); }
.c-cf--B { color: var(--qp-info); border-color: color-mix(in srgb, var(--qp-info) 55%, transparent); }
.c-cf--C { color: var(--qp-warn); border-color: color-mix(in srgb, var(--qp-warn) 50%, transparent); }
.c-cf--D { color: var(--qp-muted); border-style: dashed; }
.c-cf--wide { display: inline-flex; gap: 6px; height: auto; padding: 4px 8px; font-size: var(--qp-t-12); font-family: var(--qp-font-sans); font-weight: 600; }
.c-cf--lg { min-width: 40px; height: 40px; font-size: 18px; border-radius: 4px; }

/* ชิป */
.c-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.c-chip { display: inline-flex; align-items: center; gap: 8px; height: 34px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--qp-line-strong); font-size: var(--qp-t-13); font-weight: 600; color: var(--qp-ink-2); text-decoration: none; white-space: nowrap; transition: border-color var(--qp-d-2) var(--qp-ease), background var(--qp-d-2) var(--qp-ease), color var(--qp-d-2) var(--qp-ease); }
.c-chip b { font: 500 var(--qp-t-12)/1 var(--qp-font-mono); color: var(--qp-muted); }
.c-chip--g::before { content: ""; width: 8px; height: 8px; border-radius: 2px; background: var(--c); }
a.c-chip:hover { border-color: var(--qp-ink-2); color: var(--qp-ink); }
.c-chip.is-on { border-color: var(--c, var(--qp-ink)); color: var(--qp-ink); background: color-mix(in srgb, var(--c, var(--qp-ink)) 12%, transparent); }
/* v0.3.1 (10 ต.ค. 2569): เลขในชิปที่เลือก muted บนพื้นผสม 12% ได้ 3.88 → ink-2 */
.c-chip.is-on b { color: var(--qp-ink-2); }

/* บท 00 · ดัชนี */
.c-bg { width: 100%; height: 100%; display: block; }
.c-hero__say { margin-top: 22px; font-size: clamp(18px, 1.8vw, 24px); color: var(--qp-ink); }
.c-hero__tick { margin-top: 40px; }

/* บท 01 · ตาราง */
.c-tablech { padding-top: clamp(72px, 9vh, 112px); overflow: visible; }   /* dt-ch = overflow:hidden → แถบค้นหา sticky ติดกับบทแทนหน้าจอ แล้วทับหัวหมวด */
.c-bar { position: sticky; top: 64px; z-index: 6; display: grid; grid-template-columns: auto minmax(220px, 360px); gap: 14px 28px; align-items: end; padding: 16px 0 14px; margin-bottom: 28px; background: color-mix(in srgb, var(--qp-bg) 92%, transparent); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-bottom: 1px solid var(--qp-line); }
.c-bar__head { display: flex; flex-direction: column; gap: 6px; }
.c-search input { width: 100%; height: 44px; padding: 0 14px; border-radius: 4px; border: 1px solid var(--qp-line-strong); background: var(--qp-surface); color: var(--qp-ink); font: 400 var(--qp-t-15)/1 var(--qp-font-sans); }
.c-search input:focus { outline: none; border-color: var(--qp-gold); }
.c-filter { grid-column: 1 / -1; }
.c-count { grid-column: 1 / -1; min-height: 1em; font-size: var(--qp-t-12); color: var(--qp-muted); margin: -4px 0 0; }
.c-count:empty { display: none; }
/* คำอธิบายป้าย A–D ใต้หัวตาราง (เห็นบนจอสัมผัส ไม่พึ่ง tooltip) */
.c-cflegend { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin: -12px 0 28px; font-size: var(--qp-t-13); line-height: 1.6; color: var(--qp-muted); }
.c-cflegend__t { flex-basis: 100%; }
.c-cflegend__i { display: inline-flex; align-items: center; gap: 8px; color: var(--qp-ink-2); }
.c-cflegend a { color: var(--qp-green); text-underline-offset: 3px; }

.c-block { margin-top: 40px; }
.c-block:first-of-type { margin-top: 0; }
.c-block__head { display: flex; align-items: center; gap: 14px; margin-bottom: 14px; }
.c-block__bar { width: 4px; height: 26px; border-radius: 2px; background: var(--c); }
.c-block__head h3 { font-size: var(--qp-t-20); font-weight: 600; }
.c-block__n { margin-left: auto; font-size: var(--qp-t-24); color: var(--c); letter-spacing: -.02em; }

.c-grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(92px, 1fr)); gap: 6px; }
.c-block--lead .c-grid { grid-template-columns: repeat(auto-fill, minmax(108px, 1fr)); }   /* ผักใบ = หมวดหลัก ช่องใหญ่กว่า */
.c-el a { position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 2px; min-height: 104px; height: 100%; padding: 8px 9px 7px; border-radius: 4px; border: 1px solid color-mix(in srgb, var(--c) 30%, transparent); background: color-mix(in srgb, var(--c) 7%, transparent); text-decoration: none; color: var(--qp-ink-2); transition: border-color var(--qp-d-2) var(--qp-ease), background var(--qp-d-2) var(--qp-ease), transform var(--qp-d-2) var(--qp-ease); }
.c-block--lead .c-el a { min-height: 116px; }
.c-el a:hover, .c-el a:focus-visible, .c-el a.is-hot { border-color: var(--c); background: color-mix(in srgb, var(--c) 16%, transparent); color: var(--qp-ink); }
.c-el a:focus-visible { outline: 2px solid var(--qp-gold); outline-offset: 2px; }
.c-el__no { font: 400 10px/1 var(--qp-font-mono); color: var(--qp-muted); }
.c-el .c-cf { position: absolute; top: 6px; right: 6px; min-width: 16px; height: 16px; font-size: 9px; }
.c-el__sym { font: 600 26px/1 var(--qp-font-sans); letter-spacing: -.01em; color: var(--c); margin-top: 4px; }
.c-block--lead .c-el__sym { font-size: 30px; }
.c-el__th { font-size: 12px; line-height: 1.35; color: var(--qp-ink-2); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.7em; }
.c-el__cy { font: 400 10px/1 var(--qp-font-mono); color: var(--qp-muted); }
.c-el__cy b { color: var(--qp-ink-2); font-weight: 500; }
.c-empty { margin-top: 24px; color: var(--qp-muted); }

/* การ์ดขยาย (ชี้/โฟกัสช่อง) · สคริปต์วางตำแหน่ง */
.c-card { position: fixed; z-index: 60; width: 320px; padding: 18px 18px 16px; border-radius: 4px; border: 1px solid var(--c, var(--qp-line-strong)); background: var(--qp-surface); box-shadow: var(--qp-shadow); pointer-events: none; opacity: 0; transform: translateY(4px); transition: opacity var(--qp-d-2) var(--qp-ease), transform var(--qp-d-2) var(--qp-ease); }
.c-card.is-on { opacity: 1; transform: none; }
.c-card__top { display: flex; align-items: center; gap: 10px; font: 400 11px/1 var(--qp-font-mono); color: var(--qp-muted); }
.c-card__top .c-cf { margin-left: auto; }
.c-card__sym { display: block; margin-top: 10px; font: 600 44px/1 var(--qp-font-sans); color: var(--c); }
.c-card__th { margin-top: 8px; font-size: var(--qp-t-17); font-weight: 600; color: var(--qp-ink); line-height: 1.4; }
.c-card__en { font: italic 400 var(--qp-t-13)/1.4 var(--qp-font-serif); color: var(--qp-muted); }
.c-card dl { margin: 12px 0 0; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 6px 12px; font-size: var(--qp-t-13); }
.c-card dt { color: var(--qp-muted); }
.c-card dd { margin: 0; color: var(--qp-ink-2); }
.c-card__cf { margin-top: 10px; font-size: var(--qp-t-12); color: var(--qp-muted); display: flex; gap: 8px; align-items: flex-start; }
.c-card__go { margin-top: 12px; font-size: var(--qp-t-13); font-weight: 600; color: var(--qp-ink); }

/* บท 02 · ระดับความมั่นใจ */
.c-cfintro { margin-top: 18px; }
.c-cfrows { margin-top: 32px; }
.c-cfrows .dt-row { grid-template-columns: 64px minmax(0, 1fr) auto; }
.c-cfrows p { font-size: var(--qp-t-17); color: var(--qp-ink-2); }
.c-cfrows__n { font-size: var(--qp-t-32); }
.c-cfrows__n small { font-family: var(--qp-font-sans); font-size: var(--qp-t-13); }

/* หน้าพืชเดี่ยว · แผ่นพืช */
.c-bc { display: flex; flex-wrap: wrap; gap: 6px 10px; font-size: var(--qp-t-13); color: var(--qp-muted); margin-bottom: 36px; }
.c-bc a { text-decoration: none; }
.c-bc a:hover { color: var(--qp-ink); }
.c-bc [aria-current] { color: var(--qp-ink-2); }
.c-sheet { padding-top: clamp(104px, 14vh, 150px); }
.c-sheet__grid { align-items: start; }
.c-sheet__th { font-size: clamp(34px, 4.4vw, 60px); }
.c-sheet__en { font: italic 400 clamp(18px, 1.8vw, 24px)/1.35 var(--qp-font-serif); color: var(--qp-muted); }
.c-crop .c-chip--g { border-color: color-mix(in srgb, var(--c) 55%, transparent); color: var(--qp-ink); }
.c-plate { position: relative; aspect-ratio: 4 / 5; max-width: 440px; width: 100%; justify-self: end; display: grid; place-items: center; background: radial-gradient(ellipse at 50% 40%, color-mix(in srgb, var(--c) 14%, transparent), transparent 70%), color-mix(in srgb, var(--qp-surface) 70%, transparent); }
.c-plate__no { position: absolute; top: 18px; left: 20px; font: 400 var(--qp-t-13)/1 var(--qp-font-mono); color: var(--qp-muted); }
.c-plate__cf { position: absolute; top: 14px; right: 16px; }
.c-plate__sym { font: 600 clamp(120px, 16vw, 200px)/1 var(--qp-font-sans); letter-spacing: -.03em; color: var(--c); }
.c-plate__cy { position: absolute; left: 20px; bottom: 54px; font-size: var(--qp-t-44); color: var(--qp-ink); }
.c-plate__cy small { font-family: var(--qp-font-sans); font-size: var(--qp-t-13); }
.c-plate__cap { position: absolute; left: 20px; right: 20px; bottom: 20px; font: italic 400 var(--qp-t-13)/1.3 var(--qp-font-serif); color: var(--qp-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.c-h { margin: 14px 0 24px; }
.c-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--qp-line); margin: 0; }
.c-facts > div { padding: 22px 20px 22px 0; border-bottom: 1px solid var(--qp-line); display: flex; flex-direction: column; gap: 10px; }
.c-facts > div:not(:nth-child(3n+1)) { padding-left: 20px; border-left: 1px solid var(--qp-line); }
.c-facts > div.c-facts__wide { grid-column: 1 / -1; padding-left: 0; border-left: 0; }
.c-facts dt { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.c-facts dd { margin: 0; }
.c-facts dd.dt-num small { font-family: var(--qp-font-sans); font-size: var(--qp-t-13); }
.c-facts__t { font-size: var(--qp-t-17); color: var(--qp-ink); }
.c-facts__note { display: block; margin-top: 4px; font-size: var(--qp-t-12); color: var(--qp-muted); }

.c-tl { display: flex; gap: 3px; margin-top: 32px; }
.c-tl__s { display: flex; align-items: baseline; gap: 6px; min-width: 0; padding: 12px 10px; font-size: var(--qp-t-12); color: var(--qp-ink); white-space: nowrap; overflow: hidden; border-top: 2px solid var(--c); }
.c-tl__s b { font: 500 var(--qp-t-15)/1 var(--qp-font-mono); }
.c-tl--p1 { background: color-mix(in srgb, var(--c) 6%, transparent); }
.c-tl--p2 { background: color-mix(in srgb, var(--c) 11%, transparent); }
.c-tl--p3 { background: color-mix(in srgb, var(--c) 20%, transparent); }
.c-tl--p4 { background: color-mix(in srgb, var(--c) 32%, transparent); }
.c-note { margin-top: 12px; font-size: var(--qp-t-13); color: var(--qp-muted); max-width: 90ch; }

.c-env p { color: var(--qp-ink-2); }
.c-env__k { display: block; font-size: var(--qp-t-12); color: var(--qp-muted); margin-bottom: 2px; }
.c-tablewrap { overflow-x: auto; }
.c-table { width: 100%; min-width: 480px; border-collapse: collapse; font-size: var(--qp-t-15); }
.c-table th, .c-table td { text-align: left; padding: 14px 12px; border-bottom: 1px solid var(--qp-line); }
.c-table thead th { font-size: var(--qp-t-13); font-weight: 600; color: var(--qp-muted); border-bottom-color: var(--qp-line-strong); }
.c-table th[scope="row"] { font-weight: 600; color: var(--qp-ink); }
.c-table td { color: var(--qp-ink-2); }
.c-key { margin-top: 4px; }
.c-env + .c-h, .c-tablewrap + .c-h { margin-top: 48px; }

.c-rel__h { margin-top: 56px; font-size: var(--qp-t-17); font-weight: 600; color: var(--qp-ink-2); }
.c-grid--rel { margin-top: 14px; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); }

.c-legal { margin-top: 40px; font-size: var(--qp-t-12); color: var(--qp-muted); max-width: 100ch; line-height: 1.7; }

/* ความกว้างช่วงรอบปลูก (เปอร์เซ็นต์ปัดเป็นจำนวนเต็ม · ไม่ใช้ style ในบรรทัด) */
.c-w6{flex:0 1 6%} .c-w7{flex:0 1 7%} .c-w8{flex:0 1 8%} .c-w9{flex:0 1 9%} .c-w10{flex:0 1 10%} .c-w11{flex:0 1 11%} .c-w12{flex:0 1 12%} .c-w13{flex:0 1 13%} .c-w14{flex:0 1 14%} .c-w15{flex:0 1 15%} .c-w16{flex:0 1 16%} .c-w17{flex:0 1 17%} .c-w18{flex:0 1 18%} .c-w19{flex:0 1 19%} .c-w20{flex:0 1 20%} .c-w21{flex:0 1 21%} .c-w22{flex:0 1 22%} .c-w23{flex:0 1 23%} .c-w24{flex:0 1 24%} .c-w25{flex:0 1 25%} .c-w26{flex:0 1 26%} .c-w27{flex:0 1 27%} .c-w28{flex:0 1 28%} .c-w29{flex:0 1 29%} .c-w30{flex:0 1 30%} .c-w31{flex:0 1 31%} .c-w32{flex:0 1 32%} .c-w33{flex:0 1 33%} .c-w34{flex:0 1 34%} .c-w35{flex:0 1 35%} .c-w36{flex:0 1 36%} .c-w37{flex:0 1 37%} .c-w38{flex:0 1 38%} .c-w39{flex:0 1 39%} .c-w40{flex:0 1 40%} .c-w41{flex:0 1 41%} .c-w42{flex:0 1 42%} .c-w43{flex:0 1 43%} .c-w44{flex:0 1 44%} .c-w45{flex:0 1 45%} .c-w46{flex:0 1 46%} .c-w47{flex:0 1 47%} .c-w48{flex:0 1 48%} .c-w49{flex:0 1 49%} .c-w50{flex:0 1 50%} .c-w51{flex:0 1 51%} .c-w52{flex:0 1 52%} .c-w53{flex:0 1 53%} .c-w54{flex:0 1 54%} .c-w55{flex:0 1 55%} .c-w56{flex:0 1 56%} .c-w57{flex:0 1 57%} .c-w58{flex:0 1 58%} .c-w59{flex:0 1 59%} .c-w60{flex:0 1 60%} .c-w61{flex:0 1 61%} .c-w62{flex:0 1 62%} .c-w63{flex:0 1 63%} .c-w64{flex:0 1 64%} .c-w65{flex:0 1 65%} .c-w66{flex:0 1 66%} .c-w67{flex:0 1 67%} .c-w68{flex:0 1 68%} .c-w69{flex:0 1 69%} .c-w70{flex:0 1 70%} .c-w71{flex:0 1 71%} .c-w72{flex:0 1 72%} .c-w73{flex:0 1 73%} .c-w74{flex:0 1 74%} .c-w75{flex:0 1 75%} .c-w76{flex:0 1 76%} .c-w77{flex:0 1 77%} .c-w78{flex:0 1 78%} .c-w79{flex:0 1 79%} .c-w80{flex:0 1 80%} .c-w81{flex:0 1 81%} .c-w82{flex:0 1 82%} .c-w83{flex:0 1 83%} .c-w84{flex:0 1 84%} .c-w85{flex:0 1 85%} .c-w86{flex:0 1 86%} .c-w87{flex:0 1 87%} .c-w88{flex:0 1 88%} .c-w89{flex:0 1 89%} .c-w90{flex:0 1 90%} .c-w91{flex:0 1 91%} .c-w92{flex:0 1 92%} .c-w93{flex:0 1 93%} .c-w94{flex:0 1 94%} .c-w95{flex:0 1 95%} .c-w96{flex:0 1 96%} .c-w97{flex:0 1 97%} .c-w98{flex:0 1 98%} .c-w99{flex:0 1 99%} .c-w100{flex:0 1 100%}

/* ── มือถือ ── */
@media (max-width: 900px) {
  .c-bar { grid-template-columns: minmax(0, 1fr); }
  .c-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .c-facts > div:not(:nth-child(3n+1)) { padding-left: 0; border-left: 0; }
  .c-facts > div:nth-child(2n):not(.c-facts__wide) { padding-left: 16px; border-left: 1px solid var(--qp-line); }
  .c-plate { justify-self: start; max-width: 360px; }
}
@media (max-width: 560px) {
  .c-hero .dt-mega { font-size: clamp(56px, 22vw, 96px); }
  .c-bar { top: 64px; padding: 12px 0 10px; }
  .c-filter { flex-wrap: nowrap; overflow-x: auto; margin: 0 -20px; padding: 0 20px 4px; scrollbar-width: none; }
  /* v0.3.1: แถบชิปเลื่อนข้างได้ แต่ไม่มีสัญญาณ → เงาจางขอบขวาเกาะขอบตอนเลื่อน (sticky) · ชิปสุดท้ายยังกดได้ (pointer-events none) */
  .c-filter::after { content: ""; position: sticky; right: 0; flex: 0 0 40px; margin-left: -40px; align-self: stretch; background: linear-gradient(90deg, transparent, var(--qp-bg) 75%); pointer-events: none; }
  .c-filter::-webkit-scrollbar { display: none; }
  .c-grid, .c-block--lead .c-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px; }
  .c-el a, .c-block--lead .c-el a { min-height: 92px; padding: 6px 6px 5px; }
  .c-el__sym, .c-block--lead .c-el__sym { font-size: 21px; }
  .c-el__th { font-size: 11px; }
  .c-cfrows .dt-row { grid-template-columns: 48px minmax(0, 1fr) auto; gap: 6px 14px; }
  .c-facts { grid-template-columns: minmax(0, 1fr); }
  .c-facts > div:nth-child(n), .c-facts > div:nth-child(2n):not(.c-facts__wide) { padding-left: 0; border-left: 0; }
  .c-table { min-width: 0; font-size: var(--qp-t-13); }
  .c-table th, .c-table td { padding: 12px 6px; }
  .c-tl { flex-wrap: wrap; }
  .c-tl__s { flex: 1 1 40% !important; }
  .c-grid--rel { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .c-card { display: none; }
}

/* ── คอมแพค (10 ต.ค. 2569 · ใช้ตัวแปร --dt-* จาก deeptech.css v0.2) ── */
.c-tablech { padding-top: var(--dt-pad-top); }
.c-card__sym { font-size: 28px; }
.c-sheet { padding-top: var(--dt-hero-top); }
.c-sheet__th { font-size: clamp(24px, 2.8vw, 36px); }
.c-plate__sym { font-size: var(--dt-fs-num-xl); }
.c-plate__cy { font-size: var(--qp-t-24); }
@media (max-width: 560px) {
  .c-hero .dt-mega { font-size: clamp(32px, 12vw, 56px); }
}
