.fiscal-docs-section { display: grid; gap: 22px; }

.fiscal-docs-search { display: flex; gap: 12px; align-items: end; flex-wrap: wrap; }
.fiscal-docs-search label { display: grid; gap: 7px; flex: 1 1 440px; font-weight: 700; }
.fiscal-docs-search input,
.fiscal-cancel-card textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(31, 41, 55, 0.18);
  border-radius: 12px;
  padding: 12px 14px;
  font: inherit;
  background: #fff;
}

.fiscal-docs-status { display: inline-flex; align-items: center; padding: 7px 11px; border-radius: 999px; font-size: .78rem; font-weight: 800; background: #f3f4f6; }
.fiscal-docs-status.is-authorized { background: #e8f7ee; color: #17653b; }
.fiscal-docs-status.is-cancelled { background: #f4f4f5; color: #52525b; }
.fiscal-docs-status.is-rejected,
.fiscal-docs-status.is-error { background: #fff0f0; color: #9f1d1d; }

.fiscal-docs-meta { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.fiscal-docs-meta > div { display: grid; gap: 5px; padding: 14px; border-radius: 14px; background: #f8f8f7; }
.fiscal-docs-meta span { font-size: .75rem; font-weight: 700; color: #6b7280; text-transform: uppercase; letter-spacing: .05em; }

.fiscal-docs-artifacts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.fiscal-docs-artifact { display: grid; align-content: start; gap: 12px; padding: 18px; border: 1px solid rgba(31, 41, 55, .12); border-radius: 16px; background: #fff; }
.fiscal-docs-artifact > div { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.fiscal-docs-artifact > div span { font-size: .72rem; font-weight: 800; padding: 5px 8px; border-radius: 999px; background: #f3f4f6; }
.fiscal-docs-artifact.is-ready > div span { background: #e8f7ee; color: #17653b; }
.fiscal-docs-artifact p { margin: 0; color: #6b7280; line-height: 1.45; }
.fiscal-docs-artifact a { justify-self: start; text-decoration: none; }

.fiscal-docs-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; padding-top: 4px; }
.fiscal-docs-actions small { color: #6b7280; }

.fiscal-cancel-card { display: grid; gap: 16px; padding: 20px; border: 1px solid rgba(159, 29, 29, .24); border-radius: 18px; background: #fff8f8; }
.fiscal-cancel-card h3 { margin: 3px 0 6px; }
.fiscal-cancel-card p { margin: 0; color: #6b4a4a; }
.fiscal-cancel-card label { display: grid; gap: 7px; font-weight: 700; }
.fiscal-cancel-confirm { grid-template-columns: auto 1fr; align-items: start; font-weight: 600 !important; }
.fiscal-cancel-confirm input { margin-top: 3px; }
.fiscal-danger-button { justify-self: start; border: 0; border-radius: 12px; padding: 11px 15px; font: inherit; font-weight: 800; color: #fff; background: #9f1d1d; cursor: pointer; }
.fiscal-danger-button:disabled { opacity: .45; cursor: not-allowed; }
.fiscal-danger-button:focus-visible,
.fiscal-docs-search input:focus-visible,
.fiscal-cancel-card textarea:focus-visible { outline: 3px solid rgba(159, 29, 29, .24); outline-offset: 3px; }

@media (max-width: 900px) {
  .fiscal-docs-meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fiscal-docs-artifacts { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .fiscal-docs-meta { grid-template-columns: 1fr; }
  .fiscal-docs-search button { width: 100%; }
}
