/* Public demo, library, audit and showing flows. PDF images and sample-report
   contents retain their document styles; surrounding controls use the system. */
.pd-forms #main-content :is(.pg-hero,.pg-end,.fpg-final,.dmr-hero,.showing-hero) { background: var(--surface); color: var(--text); border-color: var(--border); padding-block: 32px; }
.pd-forms #main-content :is(.dmr-hero,.showing-hero) :is(h1,p,label,.text-white) { color: var(--text); }
.pd-forms #main-content :is(.dmr-lede,.dmr-chip,.dmr-pill) { color: var(--text-secondary); border-color: var(--border-strong); }
.pd-forms #main-content :is(.pg-panel,.dmr-card,.lac-card,.lac-how-card,.da-optional,.da-watch,.booking-summary,.srp-fcra) { background: var(--surface); color: var(--text); border: 1px solid var(--border); border-radius: 12px; box-shadow: none; }
.pd-forms #main-content :is(.pg-btn,.fpg-btn,.cz-cta,.dmr-btn,.lac-submit,.srp-cta,.da-send,.da-cta-fill,.btn-brand,.btn-brand-green,.sl-pill-grad) { min-height: 48px; padding: 12px 18px; border: 1px solid transparent; border-radius: 8px; background: var(--btn-action-bg) !important; color: var(--btn-action-fg) !important; font-size: 14px; line-height: 22px; font-weight: 600; box-shadow: none; white-space: normal; }
.pd-forms #main-content :is(.pg-btn,.fpg-btn,.cz-cta,.dmr-btn,.lac-submit,.srp-cta,.da-send,.da-cta-fill,.btn-brand,.btn-brand-green,.sl-pill-grad):not(:disabled):hover { background: var(--btn-action-hover) !important; transform: none; box-shadow: none; }
.pd-forms #main-content :is(.pg-btn.secondary,.fpg-btn.ghost,.da-cta-ghost) { min-height: 48px; padding: 12px 18px; border: 1px solid var(--border-strong); border-radius: 8px; background: var(--surface) !important; color: var(--text) !important; box-shadow: none; }
.pd-forms #main-content :is(input:not([type="hidden"]):not([type="file"]):not([type="checkbox"]):not([type="radio"]):not(.sr-only),select,textarea):not(:where(.pd-preserve,.pd-preserve *,.flatpickr-calendar *)) { min-width: 0; max-width: 100%; min-height: 48px; padding: 11px 13px; border: 1px solid var(--border-strong); border-radius: 8px; background: var(--surface) !important; color: var(--text) !important; font-size: 15px; line-height: 24px; }
.pd-forms #main-content textarea { resize: vertical; }
.pd-forms #main-content input[type="date"] { max-width: 280px; }
.pd-forms #main-content :is(.lac-tabs,.srp-tabs) { background: var(--surface); border-color: var(--border); border-radius: 12px; }
.pd-forms #main-content :is(.lac-tab,.srp-tab,.da-chip,.time-slot) { min-height: 48px; border: 1px solid var(--border); border-radius: 8px; color: var(--text); background: var(--surface); font-size: 14px; line-height: 22px; }
.pd-forms #main-content :is(.lac-tab.active,.srp-tab[aria-selected="true"],.da-chip.is-selected,.time-slot.is-selected) { background: var(--action-soft); color: var(--text); border-color: var(--action-ink); box-shadow: none; }
.pd-forms #main-content .flatpickr-day.selected { background: var(--action-soft); border-color: var(--action-ink); color: var(--text); }
.pd-forms #main-content .srp-arrow { min-width: 44px; min-height: 44px; }
.pd-forms #main-content .lac-drop { border-color: var(--border-strong); border-radius: 12px; background: var(--surface-canvas); }
.pd-forms #main-content .dpkp { background: var(--surface-canvas); color: var(--text); }
.pd-forms #main-content .dpkp :is(label,.dpkp-hint) { color: var(--text-secondary); letter-spacing: normal; text-transform: none; }
.pd-forms #main-content .dpkp button { min-height: 48px; padding: 12px 18px; background: var(--btn-action-bg); color: var(--btn-action-fg); border-radius: 8px; }
.pd-forms #main-content .dpkp .dpkp-hint a { color: var(--action-ink); }
@media (max-width: 600px) {
  .pd-forms #main-content :is(input:not([type="hidden"]):not([type="file"]):not([type="checkbox"]):not([type="radio"]):not(.sr-only),select,textarea):not(:where(.pd-preserve,.pd-preserve *,.flatpickr-calendar *)) { font-size: 16px; }
  .pd-forms #main-content :is(.pg-hero,.pg-end,.fpg-final,.dmr-hero,.showing-hero) { padding-block: 24px; }
  .pd-forms #main-content .dmr-body { margin-top: 0; padding-top: 20px; }
}
