/* Plant & Lawn Doctor (ROADMAP-Calcs-Garden.md GT35) — one stylesheet for both pages through
   `uses`. Only what the core stylesheet does not give: the cause cards, the IPM steps, the
   weather table, the photo pair and the lab finder. */
.chqt-doc-seg { flex-wrap: wrap; }
.chqt-doc-list { list-style: none; margin: 1rem 0 0; padding: 0; }
.chqt-doc-cause { border: 1px solid var(--chqt-line, #E4E0D5); border-radius: 12px; padding: 12px 14px; margin: 0 0 12px; background: #fff; }
.chqt-doc-cause h3 { font-size: 1.05rem; margin: 0 0 .4rem; line-height: 1.35; }
.chqt-doc-cause p { margin: 0 0 .5rem; }
.chqt-doc-badge { display: inline-block; font-size: .72rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; border-radius: 999px; padding: 2px 8px; vertical-align: 2px; background: var(--chqt-cream, #F7F5F0); color: var(--chqt-ink, #1D1F1A); border: 1px solid var(--chqt-line, #E4E0D5); }
.chqt-doc-badge[data-type="mower"] { background: var(--chqt-accent, #A3301C); color: #fff; border-color: var(--chqt-accent, #A3301C); }
.chqt-doc-badge[data-type="harmless"] { background: #E7F2E4; color: #1F5A2A; border-color: #BFD9B8; }
.chqt-doc-check { background: var(--chqt-cream, #F7F5F0); border-radius: 8px; padding: 8px 10px; }
.chqt-doc-fix { margin: .2rem 0 .6rem; padding-left: 1.2rem; }
.chqt-doc-fix li { margin-bottom: .35rem; }
.chqt-doc-label, .chqt-doc-also { font-size: .9rem; border-left: 3px solid var(--chqt-accent, #A3301C); padding-left: 8px; color: var(--chqt-page-muted, #5D6158); }
.chqt-doc-ics { margin-top: .3rem; }
.chqt-doc-dates { font-size: .88rem; margin: .5rem 0 0; padding-left: 1.1rem; }
.chqt-doc-more-causes summary { cursor: pointer; font-weight: 700; min-height: 44px; display: flex; align-items: center; }
.chqt-doc-wide { margin-top: 18px; display: grid; gap: 14px; }
.chqt-doc-box { border: 1px solid var(--chqt-line, #E4E0D5); border-radius: 14px; padding: 14px 16px; background: var(--chqt-cream, #F7F5F0); }
.chqt-doc-box h3 { margin: 0 0 .4rem; font-size: 1.1rem; }
.chqt-doc-box h4 { margin: 1rem 0 .4rem; font-size: 1rem; }
.chqt-doc-row { display: flex; flex-wrap: wrap; gap: 8px; margin: .5rem 0; }
.chqt-doc-file { position: relative; overflow: hidden; }
.chqt-doc-file input { position: absolute; inset: 0; opacity: 0; cursor: pointer; font-size: 16px; }
.chqt-doc-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: .6rem 0; }
.chqt-doc-pair figure { margin: 0; }
.chqt-doc-pair img { width: 100%; height: auto; border-radius: 10px; display: block; }
.chqt-doc-pair figcaption { font-size: .85rem; text-align: center; margin-top: 4px; }
.chqt-doc-wx { border-collapse: collapse; width: 100%; font-size: .95rem; background: #fff; }
.chqt-doc-wx th, .chqt-doc-wx td { text-align: left; padding: 6px 8px; border-bottom: 1px solid var(--chqt-line, #E4E0D5); }
.chqt-doc-wx-rules { padding-left: 1.1rem; }
.chqt-doc-wx-rules li { margin-bottom: .6rem; }
.chqt-doc-wx-rules li[data-hits="0"] strong { font-weight: 600; }
.chqt-doc-labline { margin: .3rem 0; }
.chqt-doc-pack li { margin-bottom: .5rem; }
/* On a phone the questions run long, and the answer sits under them: the line at the end of the
   form carries the first thing to check and jumps to the causes. Wider screens show the answer
   beside the form, so the line is not needed there. Cards lose some padding so a line of text is
   not twenty characters wide. */
.chqt-doc-jump { display: none; }
@media (max-width: 760px) {
  .chqt-doc-jump { display: flex; align-items: center; min-height: 48px; margin: .6rem 0 0; padding: 8px 12px; border-radius: 10px; background: var(--chqt-accent, #A3301C); color: #fff !important; font-weight: 700; text-decoration: none; }
  .chqt-doc-cause { padding: 10px; }
  .chqt-doc-check { padding: 6px 8px; }
  .chqt-doc-fix { padding-left: 1.1rem; }
}
