@charset "UTF-8";
.recovery-grid {
  display:grid;
  grid-template-columns:1fr 1.05fr;
  gap:40px;
  align-items:start
}

.recovery-grid label,.explore-controls label {
  display:block;
  font-size:13px;
  font-weight:650;
  margin-bottom:9px
}

.recovery-grid select,.explore-controls select {
  display:block;
  width:100%;
  min-height:46px;
  border:1px solid #aab99a;
  background:#fffef9;
  padding:10px 12px;
  color:var(--ink);
  font-size:13px
}

.lab-buttons {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
  margin-top:20px
}

.lab-buttons button {
  min-height:48px;
  text-align:left;
  padding:11px 13px;
  border:1px solid #b2c39e;
  background:#fafbf4;
  font-size:12px;
  transition:background 180ms,transform 180ms
}

.lab-buttons button:hover {
  background:#e7efdb;
  transform:translateY(-2px)
}

.lab-result {
  padding:26px;
  background:#fffef8;
  border:1px solid #becbad;
  min-width:0
}

.lab-counts {
  font:10px/1.6 var(--mono);
  letter-spacing:.04em;
  color:#5c744b;
  margin-bottom:20px
}

.lab-result h3 {
  font-size:31px;
  line-height:1.15;
  color:var(--danger);
  margin-bottom:18px
}

.lab-result h3[data-allowed="true"] {
  color:var(--forest)
}

.lab-result code {
  display:block;
  font:11px/1.8 var(--mono);
  background:#edf2e4;
  border:1px solid #d7e1c9;
  padding:12px;
  color:#3a5830;
  overflow-wrap:anywhere
}

.lab-result>p:not(.lab-counts) {
  font-size:13px;
  line-height:1.7;
  margin-top:16px
}

.lab-result small {
  display:block;
  border-top:1px solid #d4dfc7;
  margin-top:20px;
  padding-top:15px;
  font-size:11px;
  color:#758562;
  line-height:1.6
}

.chapter-resources {
  background:#eef0e6
}

.resource-list {
  border-top:1px solid #b9c7a8
}

.resource {
  border-bottom:1px solid #b9c7a8
}

.resource>summary {
  display:flex;
  align-items:center;
  gap:20px;
  min-height:90px;
  padding:18px 5px;
  cursor:pointer;
  list-style:none
}

.resource>summary::-webkit-details-marker {
  display:none
}

.resource-icon {
  display:grid;
  place-items:center;
  flex-shrink:0;
  border:1px solid #acbc96;
  color:var(--forest);
  height:40px;
  width:40px;
  font-size:20px
}

.resource>summary strong {
  font-size:15px;
  letter-spacing:-.02em;
  font-weight:600
}

.resource>summary small {
  display:block;
  color:#6a7b5c;
  font-size:12px;
  margin-top:4px
}

.resource-plus {
  margin-left:auto;
  display:grid;
  place-items:center;
  border:1px solid #bdcba9;
  width:28px;
  height:28px;
  font-size:18px;
  transition:transform 200ms
}

.resource[open] .resource-plus {
  transform:rotate(45deg)
}

.resource-content {
  padding:8px 0 25px
}

.explore-grid {
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:30px;
  align-items:start
}

.explore-controls label:not(:first-child) {
  margin-top:17px
}

.explore-controls>p {
  font-size:11px;
  line-height:1.6;
  margin-top:15px
}

.support-result {
  border:1px solid #bdcba9;
  background:#f8faf0;
  padding:24px;
  min-width:0
}

.support-result .eyebrow {
  font-size:9px
}

.support-result h3 {
  font-size:26px;
  line-height:1.2;
  margin-bottom:12px
}

.support-result>p {
  font-size:13px;
  line-height:1.7
}

.support-result ol {
  padding-left:20px;
  font-size:12px;
  line-height:1.7;
  color:#516747;
  margin-top:15px
}

.support-result li+li {
  margin-top:4px
}

.video-content>p {
  max-width:650px;
  font-size:13px;
  line-height:1.7;
  margin-bottom:15px
}

.video-content video {
  display:block;
  width:min(100%,780px);
  max-height:380px;
  object-fit:contain;
  background:#101c2a;
  margin:0 auto;
  border:1px solid #879b70
}

.video-content .micro-note {
  font-size:11px;
  margin-top:12px
}

.next-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  align-items:center
}

.next-copy>p:not(.eyebrow):not(.micro-note) {
  font-size:15px;
  line-height:1.7;
  margin:20px 0
}

.next-copy>.button {
  margin:20px 0 10px
}

.next-copy .micro-note {
  font-size:11px
}

.contact-pending {
  font-size:11px;
  line-height:1.6;
  color:#6d7b61;
  padding-left:12px;
  border-left:2px solid #9eb67b;
  margin-top:15px
}

.build-status {
  display:flex;
  gap:13px;
  align-items:start;
  padding:17px 0;
  border-top:1px solid #c8d3b9;
  border-bottom:1px solid #c8d3b9;
  margin:23px 0 18px
}

.build-status>.tiny-dot {
  margin-top:7px
}

.build-status strong {
  font-size:12px
}

.build-status p {
  font-size:11px;
  line-height:1.6;
  margin-top:5px
}

.owner-link {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  font-size:11px;
  text-decoration:underline;
  text-underline-offset:4px;
  margin-bottom:5px
}

.pilot-outline {
  background:#e6eddc;
  border:1px solid #bacaa5;
  padding:25px
}

.pilot-outline>.eyebrow {
  font-size:9px
}

.pilot-outline>ol {
  list-style:none;
  padding:0;
  margin:12px 0 20px
}

.pilot-outline>ol>li {
  display:flex;
  gap:12px;
  font-size:12px;
  padding:10px 0;
  border-bottom:1px solid #c7d4b5
}

.pilot-outline>ol>li>span {
  font:9px var(--mono);
  color:#74895c;
  margin-top:4px
}

.pilot-outline details>summary {
  font-size:12px;
  font-weight:650;
  min-height:44px;
  display:flex;
  align-items:center;
  cursor:pointer;
  list-style:inside
}

.inline-checklist {
  padding-left:18px;
  font-size:12px;
  line-height:1.7;
  color:#516544
}

.inline-checklist li+li {
  margin-top:8px
}

.faq-block {
  margin-top:25px
}

.faq-block h3 {
  font-size:19px;
  margin-bottom:8px
}

.faq-list details {
  border-bottom:1px solid #c6d3b6
}

.faq-list summary {
  font-size:12px;
  line-height:1.5;
  padding:13px 0;
  min-height:44px;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  gap:15px;
  list-style:none
}

.faq-list summary::-webkit-details-marker {
  display:none
}

.faq-list summary::after {
  content:'+';
  font-size:15px;
  color:#66834b
}

.faq-list details[open] summary::after {
  content:'−'
}

.faq-answer {
  padding:0 0 15px
}

.faq-answer p {
  font-size:12px;
  line-height:1.7
}

@media(max-width:1000px) {
  .next-grid {
    gap:35px
  }
  .recovery-grid {
    gap:25px
  }
  .lab-result {
    padding:22px
  }
  .lab-result h3 {
    font-size:27px
  }
}

@media(max-width:800px) {
  .recovery-grid,.explore-grid {
    grid-template-columns:1fr;
    gap:22px
  }
  .lab-buttons {
    margin-top:15px;
    gap:8px
  }
  .lab-buttons button {
    font-size:11px;
    padding:10px;
    min-height:46px
  }
  .lab-result {
    padding:20px
  }
  .lab-result h3 {
    font-size:28px;
    margin-bottom:16px
  }
  .lab-counts {
    font-size:9px;
    margin-bottom:15px
  }
  .lab-result>p:not(.lab-counts) {
    font-size:12px
  }
  .lab-result small {
    font-size:10px
  }
  .resource>summary {
    gap:12px;
    min-height:85px;
    padding:15px 0
  }
  .resource>summary strong {
    font-size:13px
  }
  .resource>summary small {
    font-size:11px
  }
  .resource-icon {
    height:34px;
    width:34px;
    font-size:18px
  }
  .resource-plus {
    width:24px;
    height:24px;
    flex-shrink:0
  }
  .support-result {
    padding:20px
  }
  .support-result h3 {
    font-size:25px
  }
  .support-result>p {
    font-size:12px
  }
  .next-copy>p:not(.eyebrow):not(.micro-note) {
    font-size:14px;
    margin:16px 0
  }
  .next-grid {
    gap:25px;
    grid-template-columns:1fr
  }
  .pilot-outline {
    padding:20px
  }
  .video-content video {
    max-height:300px
  }
  .video-content>p {
    font-size:12px
  }
  .build-status {
    margin-top:18px
  }
}

/* A local planning handoff; no submission or browser persistence. */
.enhanced .pilot-planner { display:block; margin-bottom:28px; border:1px solid var(--line); background:#fffef9; padding:18px; }
.pilot-planner summary { display:flex; justify-content:space-between; align-items:center; min-height:44px; gap:12px; font-weight:650; cursor:pointer; }
.pilot-planner .micro-note { margin-top:12px; }
.pilot-form { display:grid; gap:14px; margin-top:18px; }
.pilot-form label { display:grid; gap:6px; min-width:0; font-size:13px; font-weight:600; }
.pilot-form input,.pilot-form textarea { display:block; width:100%; min-width:0; min-height:46px; border:1px solid #aab99a; border-radius:3px; padding:10px 12px; color:var(--ink); background:var(--paper); }
.pilot-form textarea { resize:vertical; }
.pilot-form input:focus-visible,.pilot-form textarea:focus-visible { outline:3px solid #78a751; outline-offset:3px; }
.pilot-field-pair { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.pilot-preview { white-space:pre-wrap; overflow-wrap:anywhere; max-height:260px; overflow:auto; border-top:1px solid var(--line); padding-top:14px; margin:14px 0 0; font:12px/1.7 var(--mono); }
@media(max-width:420px) { .pilot-field-pair { grid-template-columns:1fr; } .enhanced .pilot-planner { padding:14px; } }
