.pdf-extract-page { min-width: 0; }

.pdf-extract-skip:focus {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 50;
  width: auto;
  height: auto;
  padding: 10px 14px;
  clip: auto;
  border-radius: 8px;
  background: #111;
  color: #fff;
}

.pdf-extract-workspace { max-width: 860px; }

#pdf-extract-form { display: grid; gap: 18px; }

.pdf-extract-step {
  min-width: 0;
  margin: 0;
  padding: 22px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius);
}

.pdf-extract-step legend { padding: 0 8px; font-weight: 650; }
.pdf-extract-step legend span { margin-right: 8px; color: var(--color-blue); font-size: .76rem; letter-spacing: .04em; }
.pdf-extract-file-label.is-disabled { border-color: var(--color-border); color: var(--color-sub); cursor: default; }
.pdf-extract-help { margin-top: 10px; color: var(--color-sub); font-size: .84rem; }

.pdf-extract-facts,
.pdf-extract-result-facts { display: grid; gap: 0; margin: 18px 0 0; border-top: 1px solid var(--color-border); }
.pdf-extract-facts[hidden] { display: none; }
.pdf-extract-facts div,
.pdf-extract-result-facts div { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 14px; padding: 10px 0; border-bottom: 1px solid var(--color-border); }
.pdf-extract-facts dt,
.pdf-extract-facts dd,
.pdf-extract-result-facts dt,
.pdf-extract-result-facts dd { margin: 0; }
.pdf-extract-facts dt,
.pdf-extract-result-facts dt { color: var(--color-sub); font-size: .82rem; }
.pdf-extract-facts dd,
.pdf-extract-result-facts dd { overflow-wrap: anywhere; font-weight: 650; }

.pdf-extract-label { display: block; margin-bottom: 8px; font-weight: 650; }
.pdf-extract-input { width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid var(--color-border); border-radius: var(--radius); background: #fff; color: var(--color-text); font: inherit; }
.pdf-extract-input:focus-visible,
.pdf-extract-result:focus { outline: 3px solid rgba(47, 111, 237, .24); outline-offset: 2px; }
.pdf-extract-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.pdf-extract-status { min-height: 1.8em; }

.pdf-extract-privacy,
.pdf-extract-original-note { padding: 16px 18px; border-radius: var(--radius); background: #f8f9fb; color: var(--color-sub); font-size: .86rem; }
.pdf-extract-original-note { border-left: 3px solid #d6a44b; }

.pdf-extract-result { margin-top: 28px; padding: 24px; border: 1px solid #cfe0ff; border-radius: var(--radius); background: #fbfdff; }
.pdf-extract-result .eyebrow { margin-bottom: 6px; }
.pdf-extract-result h2 { margin-bottom: 8px; }
.pdf-extract-result-message { color: var(--color-sub); }
.pdf-extract-download { width: 100%; margin-top: 20px; background: var(--color-text); color: #fff; }
.pdf-extract-download:hover,
.pdf-extract-download:focus-visible { background: var(--color-blue); color: #fff; }

.pdf-extract-related { margin-top: 28px; padding-top: 22px; border-top: 1px solid var(--color-border); }
.pdf-extract-related h2 { margin-bottom: 10px; font-size: .92rem; }
.pdf-extract-related p { margin-bottom: 7px; color: var(--color-sub); font-size: .86rem; }
.pdf-extract-related a { text-decoration: underline; text-decoration-color: #cfd5df; text-underline-offset: 3px; }

@media (max-width: 430px) {
  .pdf-extract-step,
  .pdf-extract-result { padding: 15px; }
  .pdf-extract-actions { align-items: stretch; flex-direction: column; }
  .pdf-extract-actions .button { width: 100%; }
  .pdf-extract-facts div,
  .pdf-extract-result-facts div { grid-template-columns: 108px minmax(0, 1fr); gap: 8px; }
}

@media (prefers-reduced-motion: reduce) {
  .pdf-extract-page *,
  .pdf-extract-page *::before,
  .pdf-extract-page *::after { scroll-behavior: auto !important; transition: none !important; }
}
