.reports-workspace { display:grid; gap:20px; min-width:0; }
.report-panel { padding:24px; min-width:0; }
.report-panel h2 { margin:0 0 12px; font-size:20px; }
.report-panel h3 { margin:24px 0 10px; font-size:16px; }
.report-panel p { line-height:1.65; overflow-wrap:anywhere; }
.report-heading > div { min-width:0; max-width:100%; }
.report-heading h2 { overflow-wrap:anywhere; }
.report-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; flex-wrap:wrap; }
.report-controls { display:flex; align-items:end; gap:14px; flex-wrap:wrap; margin:20px 0; }
.report-controls label { display:grid; gap:8px; min-width:150px; font-weight:600; }
.report-controls .report-search { flex:1; min-width:190px; }
.report-controls input, .report-controls select { width:100%; min-width:0; min-height:44px; border:1px solid var(--line); border-radius:8px; background:white; padding:10px 12px; font:inherit; color:var(--text); }
.report-source-note { border-left:3px solid #c28a27; background:#fff8e9; padding:12px 14px; color:#6f541f; }
.report-actions { display:flex; flex-wrap:wrap; gap:8px; }
.report-meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:16px 0; border-bottom:1px solid var(--line); }
.report-meta dt, .report-secondary { color:var(--muted); font-size:13px; }
.report-meta dd { margin:6px 0 0; overflow-wrap:anywhere; }
.report-table-wrap { overflow:auto; max-width:100%; border:1px solid var(--line); border-radius:8px; }
.report-table { min-width:760px; width:100%; }
.report-table td, .report-table th { white-space:nowrap; }
.report-table .report-wrap-cell { white-space:normal; min-width:210px; max-width:380px; overflow-wrap:anywhere; }
.report-table .report-secondary { display:block; margin-top:5px; }
.report-table .cell--numeric { text-align:right; font-variant-numeric:tabular-nums; }
.report-pagination { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:12px; margin-top:16px; }
.report-pagination span { font-size:13px; color:var(--muted); }
.report-checks { list-style:none; padding:0; display:grid; gap:10px; }
.report-checks li { padding:12px; background:var(--canvas); border-radius:8px; }
.report-checks strong, .report-checks span { display:block; overflow-wrap:anywhere; }
.report-checks span { margin-top:6px; line-height:1.6; }
.report-totals { display:flex; flex-wrap:wrap; gap:12px; margin:16px 0; }
.report-totals > div { padding:16px; background:var(--canvas); border-radius:8px; flex:1; min-width:170px; }
.report-totals span, .report-totals strong { display:block; }
.report-totals strong { margin-top:8px; font-size:22px; text-align:right; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.report-totals small { font-size:13px; font-weight:400; }
.report-comparison, .report-integrity { margin-top:18px; padding:14px; border:1px solid var(--line); border-radius:8px; }
.report-panel summary { cursor:pointer; font-weight:600; min-height:32px; display:list-item; padding:6px 0; }
.report-differences { padding-left:20px; }
.report-differences > li { margin:14px 0; overflow-wrap:anywhere; }
.report-differences p { margin:5px 0; }
.report-integrity code { display:block; overflow-wrap:anywhere; white-space:normal; }
#report-message { margin:12px 0 0; color:var(--brand-strong); }
#report-message.is-error { color:#b42335; }
.reports-workspace [hidden] { display:none !important; }
.reports-workspace :focus-visible { outline:3px solid var(--brand); outline-offset:3px; }
@media (max-width:767px) {
  .report-panel { padding:16px; }
  .report-controls label, .report-controls .report-search { width:100%; min-width:0; }
  .report-meta { grid-template-columns:1fr; gap:12px; }
  .report-actions { width:100%; }
  .report-actions .btn { flex:1 1 140px; white-space:normal; }
  .reports-workspace .btn { min-height:44px; }
  .report-panel summary { min-height:44px; }
}
