.project-audit-preparation {
  margin-block: 24px; padding: 22px; min-width: 0;
  border: 1px solid var(--line, #d8dde0); border-radius: 16px;
  background: var(--surface, #fff); color: var(--ink, #26282b);
  overflow-wrap: anywhere;
}
.project-audit-preparation h2 { margin: 0 0 8px; color: var(--heading, #123b31); text-transform: none; letter-spacing: normal; }
.project-audit-preparation h3 { margin: 0 0 8px; font-size: 1.05rem; }
.project-audit-preparation h4 { margin: 0 0 5px; font-size: 1rem; }
.project-audit-preparation > .audit-preparation-disclosure { margin: 0; }
.project-audit-preparation > .audit-preparation-disclosure > summary {
  color: var(--heading, #123b31); font-weight: 700;
}
.project-audit-preparation .audit-preparation-body { padding-top: 4px; }
.project-audit-preparation p { margin: 8px 0; }
.project-audit-preparation .audit-intro { max-width: 72ch; }
.project-audit-preparation .audit-note,
.project-audit-preparation .audit-source-time { color: var(--muted, #5b6770); }
.project-audit-preparation .audit-source-time { font-size: .88rem; }
.project-audit-preparation .audit-sources { display: grid; gap: 16px; margin-top: 20px; }
.project-audit-preparation .audit-source { padding-top: 18px; border-top: 1px solid var(--line, #d8dde0); min-width: 0; }
.project-audit-preparation .audit-list { list-style: none; padding: 0; margin: 12px 0; }
.project-audit-preparation .audit-list > li {
  padding: 12px; margin-block: 8px; border-radius: 9px;
  background: var(--surface-soft, #f5f8f6); min-width: 0;
}
.project-audit-preparation .audit-list p { margin: 4px 0; }
.project-audit-preparation .audit-status { font-weight: 600; }
.project-audit-preparation .audit-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 16px; }
.project-audit-preparation button,
.project-audit-preparation a[data-audit-document] {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; max-width: 100%; padding: 9px 14px;
  border: 1px solid var(--line, #d8dde0); border-radius: 9px;
  background: var(--surface, #fff); color: var(--ink, #26282b);
  font: inherit; font-weight: 600; text-decoration: none; cursor: pointer;
  white-space: normal; text-align: left;
}
.project-audit-preparation button[data-audit-download] {
  background: var(--action, #123f35); color: var(--on-action, #fff); border-color: transparent;
}
.project-audit-preparation button:hover,
.project-audit-preparation a[data-audit-document]:hover { box-shadow: 0 0 0 1px var(--focus, #0b6b4b); }
.project-audit-preparation button:focus-visible,
.project-audit-preparation a:focus-visible { outline: 3px solid var(--focus, #0b6b4b); outline-offset: 3px; }
.project-audit-preparation button:disabled { cursor: default; opacity: .6; }
.project-audit-preparation details { margin-top: 12px; }
.project-audit-preparation summary { cursor: pointer; min-height: 44px; padding-block: 10px; }
.project-audit-preparation summary:focus-visible { outline: 3px solid var(--focus, #0b6b4b); outline-offset: 3px; }
.project-audit-preparation .audit-entries { border: 1px solid var(--line, #d8dde0); border-radius: 9px; padding-inline: 12px; }
.project-audit-preparation .audit-entries > summary { font-weight: 600; color: var(--ink, #26282b); }
.project-audit-preparation .audit-entries > .audit-list { margin: 0; }
.project-audit-preparation .audit-entries > .audit-list > li {
  margin: 0; padding: 12px 0; border-top: 1px solid var(--line, #d8dde0);
  border-radius: 0; background: none;
}
.project-audit-preparation .audit-limits { padding-left: 20px; }
.project-audit-preparation .audit-limits li { margin-block: 7px; }
@media (max-width: 600px) {
  .project-audit-preparation { padding: 16px; margin-block: 18px; }
  .project-audit-preparation .audit-actions { align-items: stretch; flex-direction: column; }
}
