/* Dress & Skirt Length on Your Height (NS40). Source: sites/needle-tools/tools/dress-length-chart/tool.css. The quoted lines and
   the folded boxes are the Court Outfit's (.chqt-wg-*, .chqt-iv-more), copied: each tool page loads only its own tool.css. */
.chqt-dl-seg { display: grid; gap: 6px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.chqt-dl-seg--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.chqt-dl-seg button { padding: 8px 4px; border-radius: 12px; text-align: center; line-height: 1.2; }
.chqt-result [data-out="want"][hidden], .chqt-form [data-out="want"][hidden] { display: none; }
.chqt-dl-clear { margin-left: 6px; padding: 2px 10px; min-height: 32px; border: 1px solid var(--chqt-line); border-radius: 999px; background: #fff; color: var(--chqt-ink); font: inherit; font-size: 14px; cursor: pointer; }
.chqt-dl-clear[hidden] { display: none; }
/* the figure beside the answer: her height to scale, the hem in the accent colour */
.chqt-dl-top { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 14px; align-items: start; }
.chqt-dl-figbox { background: #fff; border: 1px solid var(--chqt-line); border-radius: 12px; padding: 6px; }
.chqt-dl-fig { display: block; width: 100%; height: auto; max-height: 300px; }
.chqt-dl-body { fill: #e9e2ef; stroke: #8b7d99; stroke-width: 1; }
.chqt-dl-dress { fill: var(--chqt-accent); fill-opacity: .55; stroke: var(--chqt-accent); stroke-width: 1.2; }
.chqt-dl-floor { stroke: var(--chqt-ink); stroke-width: 1.5; }
.chqt-dl-tick { stroke: var(--chqt-muted); stroke-width: .8; stroke-dasharray: 3 2; }
.chqt-dl-lab { font-size: 9px; fill: var(--chqt-muted); font-family: inherit; }
.chqt-dl-hem { stroke: var(--chqt-ink); stroke-width: 2; }
/* her length chart: a real table that scrolls in its own box, never the page */
.chqt-dl-h { margin-top: 4px; }
.chqt-dl-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; max-width: 100%; border: 1px solid var(--chqt-line); border-radius: 10px; background: #fff; }
.chqt-dl-chart { border-collapse: collapse; width: 100%; font-size: 15px; line-height: 1.35; color: var(--chqt-ink); }
.chqt-dl-chart th, .chqt-dl-chart td { padding: 8px 10px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--chqt-line); }
.chqt-dl-chart tbody tr:last-child th, .chqt-dl-chart tbody tr:last-child td { border-bottom: 0; }
.chqt-dl-chart thead th { font-size: 12.5px; letter-spacing: .04em; text-transform: uppercase; color: var(--chqt-muted); font-weight: 600; }
.chqt-dl-chart td[data-out-len] { font-weight: 700; white-space: nowrap; }
.chqt-dl-chart tr.is-on { background: var(--chqt-cream); }
.chqt-dl-chart tr.is-on th { box-shadow: inset 4px 0 0 var(--chqt-accent); }
.chqt-dl-chart tr > :nth-child(4) { color: var(--chqt-muted); white-space: nowrap; }
.chqt-result [data-out="chart-box"][hidden], .chqt-result [data-out="brands-box"][hidden], .chqt-result [data-out="words"][hidden] { display: none; }
.chqt-dl-brands { margin: 0; padding-left: 18px; font-size: 15px; line-height: 1.45; color: var(--chqt-ink); }
.chqt-dl-brands li + li { margin-top: 6px; }
.chqt-dl-brands small { display: block; font-size: 13.5px; color: var(--chqt-muted); }
.chqt-dl-brands a { color: var(--chqt-muted); }
.chqt-wg-box a { color: var(--chqt-ink); }
.chqt-wg-box { background: #fff; border: 1px solid var(--chqt-line); border-radius: 10px; padding: 10px 12px; }
.chqt-wg-h { margin: 0 0 6px; font-size: 13px; letter-spacing: .04em; text-transform: uppercase; color: var(--chqt-muted); font-weight: 600; }
.chqt-wg-r + .chqt-wg-h { margin-top: 14px; padding-top: 10px; border-top: 1px solid var(--chqt-line); }
.chqt-wg-r + .chqt-wg-r { margin-top: 10px; padding-top: 8px; border-top: 1px dashed var(--chqt-line); }
.chqt-wg-rl { margin: 0 0 4px; font-weight: 600; font-size: 15.5px; line-height: 1.4; }
.chqt-wg-q { margin: 0; padding-left: 18px; font-size: 14.5px; line-height: 1.45; color: var(--chqt-ink); }
.chqt-wg-q li + li { margin-top: 3px; }
.chqt-pp-tag { display: inline-block; margin-right: 4px; padding: 0 7px; border-radius: 999px; background: var(--chqt-cream); font-size: 12.5px; font-weight: 600; color: var(--chqt-muted); }
.chqt-iv-more { background: #fff; border: 1px solid var(--chqt-line); border-radius: 12px; padding: 0 12px; }
.chqt-iv-more[hidden] { display: none; }
.chqt-iv-more > summary { cursor: pointer; font-weight: 700; min-height: 44px; display: flex; align-items: center; color: var(--chqt-ink); }
.chqt-iv-more[open] { padding-bottom: 12px; }
.chqt-iv-more .chqt-wg-box { border: 0; padding: 0; }
@media (max-width: 460px) {
  .chqt[data-tool="dress-length-chart"] .chqt-lede { display: none; }
  .chqt-dl-seg { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .chqt-dl-top { grid-template-columns: 88px minmax(0, 1fr); gap: 10px; }
  /* each row: the name and her length, the spot under the name; the other garment's column waits for a wider screen */
  .chqt-dl-chart thead { display: none; }
  .chqt-dl-chart tbody tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 10px; border-bottom: 1px solid var(--chqt-line); }
  .chqt-dl-chart tbody tr:last-child { border-bottom: 0; }
  .chqt-dl-chart tbody th, .chqt-dl-chart tbody td { border-bottom: 0; padding: 6px 8px; }
  .chqt-dl-chart tbody tr > :nth-child(2) { grid-column: 1 / -1; grid-row: 2; padding-top: 0; font-size: 14px; color: var(--chqt-muted); }
  .chqt-dl-chart tbody tr > :nth-child(3) { grid-column: 2; grid-row: 1; }
  .chqt-dl-chart tbody tr > :nth-child(4) { display: none; }
}
/* NS75: on phones the answer shows in one tappable line under the first question (the full answer is below) */
.chqt-ns-peek { display: none; }
@media (max-width: 460px) {
  .chqt-ns-peek { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; width: 100%; min-height: 44px; margin: 0; padding: 8px 12px; font: inherit; text-align: left; cursor: pointer; border: 0; border-left: 4px solid var(--chqt-accent); border-radius: 10px; background: var(--chqt-cream); color: var(--chqt-ink); }
  .chqt-ns-peek small { font-size: 12.5px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--chqt-muted); }
  .chqt-ns-peek b { font-size: 18px; line-height: 1.25; }
  .chqt-ns-peek[hidden] { display: none; }
}
