/* Editorial presentation for the IPO tracker and research reports.
   Screen-only rules leave the existing printable report contract intact. */
@media screen {
  .ddowl-app .ddowl-page-heading h1,
  .ddowl-app .ddowl-report-heading h1,
  .ddowl-record-page .header .subject {
    margin: 0;
    color: var(--owl-ink);
    font: 400 clamp(34px, 4.8vw, 48px)/1.16 Georgia, 'Times New Roman', serif;
    letter-spacing: -1.4px;
    overflow-wrap: anywhere;
  }
  .ddowl-app .ddowl-page-heading p { margin: 13px 0 0; color: var(--owl-secondary); font-size: 13px; }
  .ddowl-app .ddowl-page-kicker { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 18px; color: var(--owl-secondary); font-size: 11px; letter-spacing: .8px; }
  .ddowl-app .ddowl-page-status { display: inline-flex; align-items: center; gap: 7px; border: 1px solid var(--owl-line); padding: 3px 7px; letter-spacing: 0; }
  .ddowl-app .ddowl-page-status::before { content: ''; width: 4px; height: 4px; border: 1px solid var(--owl-secondary); }
  .ddowl-app .ddowl-page-nav { display: flex; flex-wrap: wrap; gap: 28px; margin-bottom: 30px; border-bottom: 1px solid var(--owl-line); }
  .ddowl-app .ddowl-page-nav a { padding: 10px 0 14px; border-bottom: 1px solid transparent; color: var(--owl-secondary); font-size: 13px; text-decoration: none; }
  .ddowl-app .ddowl-page-nav a[aria-current=page] { border-color: var(--owl-ink); color: var(--owl-ink); }
  .ddowl-app .ddowl-report-breadcrumb { display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; justify-content: space-between; margin: 0 0 30px; color: var(--owl-quiet); font-size: 11px; }
  .ddowl-app .ddowl-report-breadcrumb a { color: var(--owl-secondary); text-decoration: none; }
  .ddowl-app .ddowl-report-breadcrumb a:hover { color: var(--owl-ink); text-decoration: underline; }
  .ddowl-app .ddowl-table-scroll { width: 100%; overflow-x: auto; border: 1px solid var(--owl-line); margin: 0 0 28px; }
  .ddowl-app .empty-state { color: var(--owl-secondary); }

  /* IPO stages and data tables keep their existing sorting and column controls. */
  .ddowl-ipo .ddowl-ipo-heading { max-width: 1192px; margin: 0 auto 30px; padding: 38px 36px 0; }
  .ddowl-ipo > .container { max-width: 1192px; padding: 0 36px 64px; }
  .ddowl-ipo .tab-container { width: min(1120px, calc(100% - 72px)); justify-content: flex-start; gap: 30px; margin: 0 auto 28px; padding: 0; border-color: var(--owl-line); }
  .ddowl-ipo .tab { padding: 10px 0 14px; color: var(--owl-secondary); font-size: 13px; }
  .ddowl-ipo .tab.active { color: var(--owl-ink); }
  .ddowl-ipo .tab.active::after { height: 1px; border-radius: 0; background: var(--owl-ink); }
  .ddowl-ipo .tab-count, .ddowl-ipo .tab.active .tab-count { color: var(--owl-quiet); font-size: 11px; }
  .ddowl-ipo .toolbar { flex-wrap: wrap; gap: 14px 20px; margin-bottom: 24px; }
  .ddowl-ipo .search-wrapper { width: min(100%, 560px); min-width: 0; flex: 1 1 380px; max-width: 560px; }
  .ddowl-ipo .search-box { min-height: 46px; padding-left: 42px !important; background: var(--owl-panel) !important; }
  .ddowl-ipo .search-icon { color: var(--owl-quiet); }
  .ddowl-ipo .action-btn { border: 1px solid var(--owl-line); padding: 11px 15px; color: var(--owl-ink); background: var(--owl-raised); font-size: 12px; font-weight: 400; min-height: 44px; }
  .ddowl-ipo .action-btn:hover:not(:disabled) { background: var(--owl-panel); border-color: var(--owl-strong-line); }
  .ddowl-ipo .count-badge { color: var(--owl-quiet); font-size: 11px; }
  .ddowl-ipo .table-container { overflow-x: auto; border: 1px solid var(--owl-line); border-radius: 2px; background: var(--owl-panel); }
  .ddowl-ipo table { min-width: 980px; font-size: 12px; }
  .ddowl-ipo #data-table { min-width: 1220px; }
  .ddowl-ipo th { padding: 16px 18px; background: var(--owl-raised); color: var(--owl-secondary); border-bottom: 1px solid var(--owl-line); font-size: 11px; font-weight: 400; letter-spacing: .2px; }
  .ddowl-ipo th:hover { background: var(--owl-line); color: var(--owl-ink); }
  .ddowl-ipo th.sorted-asc::after, .ddowl-ipo th.sorted-desc::after { color: var(--owl-ink); }
  .ddowl-ipo th.dragging { background: var(--owl-line); }
  .ddowl-ipo th.drag-over { border-left-color: var(--owl-ink); }
  .ddowl-ipo th .resize-handle:hover, .ddowl-ipo th .resize-handle.resizing { background: var(--owl-strong-line); }
  .ddowl-ipo td { padding: 19px 18px; border-color: var(--owl-line); color: var(--owl-secondary); line-height: 1.65; }
  .ddowl-ipo tr:hover { background: var(--owl-raised); }
  .ddowl-ipo .company-name { color: var(--owl-ink); font-weight: 400; line-height: 1.65; }
  .ddowl-ipo .company-cn { color: var(--owl-secondary); }
  .ddowl-ipo .ticker, .ddowl-ipo .ticker a, .ddowl-ipo .size-cell { color: var(--owl-ink); font-weight: 400; }
  .ddowl-ipo .company-name a:hover, .ddowl-ipo .ticker a:hover { color: var(--owl-ink); }
  .ddowl-ipo .bank-tag { padding: 3px 7px; background: var(--owl-raised); border-color: var(--owl-line); color: var(--owl-secondary); border-radius: 2px; font-size: 11px; }
  .ddowl-ipo .bank-tag.sponsor, .ddowl-ipo .role-sponsor { color: var(--owl-amber); border-color: #6b6040; background: #28271e; }
  .ddowl-ipo .role-other { color: var(--owl-secondary); border-color: var(--owl-line); background: var(--owl-raised); }
  .ddowl-ipo .role-badge, .ddowl-ipo .status-badge, .ddowl-ipo .status-active, .ddowl-ipo .status-listed { font-size: 10px; font-weight: 400; border-radius: 2px; }
  .ddowl-ipo .status-active { color: var(--owl-green); background: #252d22; }
  .ddowl-ipo .status-listed { color: var(--owl-ink); background: var(--owl-raised); }
  .ddowl-ipo .status-withdrawn, .ddowl-ipo .status-rejected { color: var(--owl-red); background: #302321; }
  .ddowl-ipo .status-lapsed { color: var(--owl-amber); background: #2e2a1d; }
  .ddowl-ipo .date-cell, .ddowl-ipo .deal-type-cell, .ddowl-ipo .sub-industry, .ddowl-ipo .no-size-label { color: var(--owl-quiet); font-size: 11px; }
  .ddowl-ipo .industry-cell { color: var(--owl-secondary); font-size: 12px; line-height: 1.65; }
  .ddowl-ipo .ah-badge { color: var(--owl-amber); background: #28271e; border: 1px solid #6b6040; border-radius: 2px; font-weight: 400; }
  .ddowl-ipo .pagination { flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 6px; margin-top: 22px; }
  .ddowl-ipo .page-btn { background: transparent; color: var(--owl-secondary); border-color: var(--owl-line); min-height: 38px; font-size: 12px; }
  .ddowl-ipo .page-btn:hover { border-color: var(--owl-strong-line); color: var(--owl-ink); }
  .ddowl-ipo .page-btn.active { color: var(--owl-bg); background: var(--owl-ink); border-color: var(--owl-ink); }
  .ddowl-ipo .page-info { color: var(--owl-quiet); font-size: 11px; }
  .ddowl-ipo .empty-state h3 { color: var(--owl-secondary); }

  /* Research surfaces: evidence remains visually distinct from review controls. */
  .ddowl-record-page .btn, .ddowl-record-page .vbtn {
    padding: 10px 14px; color: var(--owl-secondary); background: var(--owl-raised);
    border: 1px solid var(--owl-line); border-radius: 2px; font-size: 12px; line-height: 1.5;
  }
  .ddowl-record-page .btn:hover, .ddowl-record-page .vbtn:hover { color: var(--owl-ink); border-color: var(--owl-strong-line); }
  .ddowl-record-page .btn.primary, .ddowl-record-page .btn.btn-primary,
  .ddowl-record-page .action-row .btn.btn-navy { color: var(--owl-bg); background: var(--owl-ink); border-color: var(--owl-ink); font-weight: 500; }
  .ddowl-record-page .btn.primary:hover, .ddowl-record-page .btn.btn-primary:hover,
  .ddowl-record-page .action-row .btn.btn-navy:hover { background: #d9ddce; border-color: #d9ddce; }
  .ddowl-record-page .btn.confirm, .ddowl-record-page .vbtn.confirm { color: var(--owl-green); border-color: #54694b; }
  .ddowl-record-page .btn.confirm.active, .ddowl-record-page .vbtn.confirm.active { color: var(--owl-green); background: #293126; border-color: var(--owl-green); }
  .ddowl-record-page .btn.wrong, .ddowl-record-page .btn.danger, .ddowl-record-page .vbtn.wrong { color: var(--owl-red); border-color: #684842; }
  .ddowl-record-page .btn.wrong.active, .ddowl-record-page .vbtn.wrong.active { color: var(--owl-red); background: #302321; border-color: var(--owl-red); }
  .ddowl-record-page .btn.btn-copy, .ddowl-record-page .btn.copy-diag { color: var(--owl-secondary); background: transparent; border-color: var(--owl-line); }
  .ddowl-record-page .btn.copy-diag.copied { color: var(--owl-green); background: #293126; border-color: var(--owl-green); }
  .ddowl-record-page .severity-badge { border-radius: 2px; font-size: 10px; letter-spacing: .4px; padding: 3px 7px; }
  .ddowl-record-page .severity-badge.red { color: var(--owl-red); background: #302321; }
  .ddowl-record-page .severity-badge.amber { color: var(--owl-amber); background: #2e2a1d; }
  .ddowl-record-page .severity-badge.green { color: var(--owl-green); background: #252d22; }
  .ddowl-record-page .severity-badge.review, .ddowl-record-page .severity-badge.unknown { color: var(--owl-secondary); background: var(--owl-raised); }
  .ddowl-record-page .finding-card { background: var(--owl-panel); border: 1px solid var(--owl-line); border-radius: 2px; padding: 23px 24px; margin-bottom: 14px; }
  .ddowl-record-page .finding-card:hover { border-color: var(--owl-strong-line); }
  .ddowl-record-page .finding-headline { color: var(--owl-ink); font-size: 15px; font-weight: 400; line-height: 1.75; min-width: 0; overflow-wrap: anywhere; }
  .ddowl-record-page .finding-summary, .ddowl-record-page .finding-detail { color: var(--owl-secondary); font-size: 13px; line-height: 1.9; overflow-wrap: anywhere; }
  .ddowl-record-page .finding-meta { margin-top: 8px; color: var(--owl-quiet); font-size: 11px; line-height: 1.8; overflow-wrap: anywhere; }
  .ddowl-record-page .finding-detail, .ddowl-record-page .verdict-actions { margin-top: 18px; padding-top: 18px; border-color: var(--owl-line); }
  .ddowl-record-page .finding-actions, .ddowl-record-page .verdict-actions { flex-wrap: wrap; gap: 8px; }
  .ddowl-record-page .finding-meta a, .ddowl-record-page .finding-detail a { color: var(--owl-ink) !important; }
  .ddowl-record-page .finding-note { color: var(--owl-amber); background: #2e2a1d; border-radius: 2px; }
  .ddowl-record-page .section-title { color: var(--owl-ink); margin: 32px 0 18px; font: 400 25px/1.3 Georgia, 'Times New Roman', serif; letter-spacing: -.4px; }
  .ddowl-record-page .sev-group-title { margin: 26px 0 12px; font-size: 11px; letter-spacing: .8px; }
  .ddowl-record-page .sev-group-title.red { color: var(--owl-red); }
  .ddowl-record-page .sev-group-title.amber { color: var(--owl-amber); }
  .ddowl-record-page .sev-group-title.review, .ddowl-record-page .sev-group-title.snippet { color: var(--owl-secondary); }
  .ddowl-record-page .severity-dot { width: 7px; height: 7px; margin-top: 9px; }
  .ddowl-record-page .severity-dot.red { background: var(--owl-red); }
  .ddowl-record-page .severity-dot.amber { background: var(--owl-amber); }
  .ddowl-record-page .severity-dot.green { background: var(--owl-green); }
  .ddowl-record-page .severity-dot.review, .ddowl-record-page .severity-dot.unknown { background: var(--owl-quiet); }
  .ddowl-record-page .mr-group, .ddowl-record-page .funnel-block,
  .ddowl-record-page .da-block, .ddowl-record-page .missed-block, .ddowl-record-page .reg-research-block {
    background: var(--owl-panel); border-color: var(--owl-line); border-radius: 2px;
  }
  .ddowl-record-page .mr-group-header { padding: 15px 18px; color: var(--owl-ink); }
  .ddowl-record-page .mr-group-header:hover { background: var(--owl-raised); }
  .ddowl-record-page .mr-group-body, .ddowl-record-page .mr-item,
  .ddowl-record-page .nm-item, .ddowl-record-page .da-item { border-color: var(--owl-line); }
  .ddowl-record-page .mr-item { padding-top: 13px; padding-bottom: 13px; line-height: 1.8; overflow-wrap: anywhere; }
  .ddowl-record-page .mr-item a, .ddowl-record-page .nm-headline a,
  .ddowl-record-page .da-source a, .ddowl-record-page .related-links-list a { color: var(--owl-ink); }
  .ddowl-record-page .mr-item-why, .ddowl-record-page .mr-item .reason,
  .ddowl-record-page .mr-item-meta, .ddowl-record-page .da-help,
  .ddowl-record-page .missed-help, .ddowl-record-page .reg-research-help { color: var(--owl-quiet); line-height: 1.8; }
  .ddowl-record-page .nm-headline { color: var(--owl-ink); line-height: 1.8; }
  .ddowl-record-page .nm-reason, .ddowl-record-page .mr-priority-badge { color: var(--owl-amber); background: #2e2a1d; border-radius: 2px; }
  .ddowl-record-page .mr-item.mr-priority { background: #26241b; border-left-color: var(--owl-amber); }
  .ddowl-record-page .da-block h2, .ddowl-record-page .reg-research-block h2,
  .ddowl-record-page .missed-block h2 { color: var(--owl-ink); font: 400 24px/1.3 Georgia, 'Times New Roman', serif; margin-bottom: 12px; }
  .ddowl-record-page .da-item .da-name { color: var(--owl-ink); font-weight: 400; }
  .ddowl-record-page .da-item .da-evidence { color: var(--owl-secondary); border-color: var(--owl-strong-line); line-height: 1.8; }
  .ddowl-record-page .da-item .da-source { color: var(--owl-quiet); }
  .ddowl-record-page .da-item .da-rescreen { border-color: var(--owl-strong-line); color: var(--owl-ink); background: var(--owl-raised); border-radius: 2px; }
  .ddowl-record-page .report-readonly { background: var(--owl-panel); border-color: var(--owl-line); color: var(--owl-ink); padding: 24px; border-radius: 2px; font-size: 14px; line-height: 1.95; max-height: 640px; overflow-wrap: anywhere; }
  .ddowl-record-page .report-editor { min-height: 360px; line-height: 1.95; }
  .ddowl-record-page .missed-section, .ddowl-record-page .report-section { margin-top: 32px; padding-top: 26px; border-color: var(--owl-line); }
  .ddowl-record-page .missed-item { color: var(--owl-amber); background: #26241b; border-color: #6b6040; border-radius: 2px; line-height: 1.8; }
  .ddowl-record-page .missed-row button { border-color: var(--owl-amber); color: var(--owl-amber); background: var(--owl-raised); border-radius: 2px; }
  .ddowl-record-page .manual-review-section h3, .ddowl-record-page .report-section h3,
  .ddowl-record-page .missed-section h3 { font: 400 24px/1.3 Georgia, 'Times New Roman', serif; color: var(--owl-ink); margin-bottom: 18px; }
  .ddowl-record-page .quality-rating { flex-wrap: wrap; row-gap: 10px; }
  .ddowl-record-page .quality-rating-label { color: var(--owl-quiet); }
  .ddowl-record-page .rating-dot { color: var(--owl-secondary); border: 1px solid var(--owl-line); width: 28px; height: 28px; border-radius: 2px; }
  .ddowl-record-page .rating-dot.active { background: var(--owl-ink); border-color: var(--owl-ink); color: var(--owl-bg); }
  .ddowl-record-page .rating-dot:hover { border-color: var(--owl-strong-line); color: var(--owl-ink); background: var(--owl-raised); }
  .ddowl-record-page .save-row, .ddowl-record-page .ddowl-detail-action-row { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
  .ddowl-record-page .save-status { color: var(--owl-green); }
  .ddowl-record-page .edit-distance-display { color: var(--owl-quiet); }
  .ddowl-record-page .ddowl-inset { padding: 20px; border: 1px solid var(--owl-line); background: var(--owl-panel); border-radius: 2px; margin-bottom: 20px; overflow-x: auto; }
  .ddowl-record-page .ddowl-detail-section { margin-top: 32px; padding-top: 26px; border-top: 1px solid var(--owl-line); }
  .ddowl-record-page .ddowl-detail-section h3,
  .ddowl-record-page #reportContent > h3, .ddowl-record-page #modalContent > h3 {
    color: var(--owl-ink); font: 400 24px/1.3 Georgia, 'Times New Roman', serif !important; margin-bottom: 18px !important;
  }
  .ddowl-record-page :is(#reportContent, #modalContent) [style*="color:#666"],
  .ddowl-record-page :is(#reportContent, #modalContent) [style*="color:#555"],
  .ddowl-record-page :is(#reportContent, #modalContent) [style*="color:#444"],
  .ddowl-record-page :is(#reportContent, #modalContent) [style*="color:#888"] { color: var(--owl-secondary) !important; }
  .ddowl-record-page .funnel-table th, .ddowl-record-page .source-table th,
  .ddowl-record-page .sources-table th, .ddowl-record-page .reg-table th { background: var(--owl-raised); color: var(--owl-secondary); border-color: var(--owl-line); padding: 12px 14px; font-size: 10px; font-weight: 400; }
  .ddowl-record-page .funnel-table td, .ddowl-record-page .source-table td,
  .ddowl-record-page .sources-table td, .ddowl-record-page .reg-table td { border-color: var(--owl-line); padding: 13px 14px; color: var(--owl-secondary); line-height: 1.7; }
  .ddowl-record-page .funnel-phase, .ddowl-record-page .funnel-desc { color: var(--owl-quiet); }
  .ddowl-record-page .funnel-count { color: var(--owl-ink); font-weight: 400; }
  .ddowl-record-page .source-table a, .ddowl-record-page .sources-table a,
  .ddowl-record-page .reg-table a { color: var(--owl-ink); overflow-wrap: anywhere; }
  .ddowl-record-page .source-table { table-layout: fixed; }
  .ddowl-record-page .source-table th:last-child { width: 95px; }
  .ddowl-record-page .funnel-bar { max-width: 200px; background: var(--owl-strong-line); border-radius: 0; }
  .ddowl-record-page .collapsible-header { flex-wrap: wrap; gap: 8px 12px; padding: 4px 0 16px; }
  .ddowl-record-page .collapsible-header h3 { margin-bottom: 0 !important; }
  .ddowl-record-page .collapsible-header > span:last-child { flex-basis: 100%; }
  .ddowl-record-page .related-links-toggle { color: var(--owl-secondary); }
  .ddowl-record-page .related-links-list { border-color: var(--owl-line); }

  /* Past screenings and its review dialog. */
  .ddowl-reports .stats-ribbon { gap: 0; margin-bottom: 30px; border: 1px solid var(--owl-line); background: var(--owl-panel); }
  .ddowl-reports .stat-card { min-width: 0; padding: 19px 24px; background: transparent; border: 0; border-right: 1px solid var(--owl-line); border-radius: 0; }
  .ddowl-reports .stat-card:last-child { border-right: 0; }
  .ddowl-reports .stat-label { color: var(--owl-quiet); font-size: 10px; letter-spacing: .6px; margin-bottom: 6px; }
  .ddowl-reports .stat-value { color: var(--owl-ink); font-size: 27px; font-weight: 400; line-height: 1.4; }
  .ddowl-reports .search-row { gap: 14px; margin-bottom: 24px; }
  .ddowl-reports .search-bar { min-height: 46px; background: var(--owl-panel) !important; }
  .ddowl-reports .reports-table { min-width: 650px; margin: 0; background: var(--owl-panel); }
  .ddowl-reports .reports-table th { background: var(--owl-raised); color: var(--owl-secondary); font-size: 10px; font-weight: 400; letter-spacing: .4px; padding: 15px 18px; border-color: var(--owl-line); }
  .ddowl-reports .reports-table td { padding: 20px 18px; border-color: var(--owl-line); color: var(--owl-secondary); font-size: 12px; }
  .ddowl-reports .reports-table td strong { font-weight: 400; color: var(--owl-ink); }
  .ddowl-reports .reports-table tr:hover td { background: var(--owl-raised); }
  .ddowl-reports .review-status { border-radius: 2px; font-size: 10px; }
  .ddowl-reports .review-status.reviewed { color: var(--owl-green); background: #252d22; }
  .ddowl-reports .review-status.pending { color: var(--owl-amber); background: #2e2a1d; }
  .ddowl-reports .review-status.unreviewed { color: var(--owl-quiet); }
  .ddowl-reports .btn-delete-row { color: var(--owl-quiet); }
  .ddowl-reports .btn-delete-row:hover { color: var(--owl-red); background: #302321; }
  .ddowl-reports .modal-overlay { padding: 42px 24px; background: #0a0b09dd; }
  .ddowl-reports .modal { max-width: 1040px; background: var(--owl-bg); border-color: var(--owl-strong-line); border-radius: 2px; padding: 34px; box-shadow: 0 30px 100px #0005; }
  .ddowl-reports .modal-header { align-items: flex-start; gap: 24px; padding-bottom: 25px; margin-bottom: 28px; border-bottom: 1px solid var(--owl-line); }
  .ddowl-reports .modal-header h2 { font: 400 36px/1.25 Georgia, 'Times New Roman', serif; letter-spacing: -.8px; overflow-wrap: anywhere; }
  .ddowl-reports .modal-close { color: var(--owl-secondary); font-size: 26px; padding: 2px 6px; }
  .ddowl-reports .tab-bar { flex-wrap: wrap; gap: 12px; border-bottom: 1px solid var(--owl-line); }
  .ddowl-reports .tab-btn { background: transparent; color: var(--owl-secondary); border: 0; border-bottom: 1px solid transparent; border-radius: 0; padding: 10px 0 14px; }
  .ddowl-reports .tab-btn.active { color: var(--owl-ink); background: transparent; border-bottom-color: var(--owl-ink); }

  /* Current and legacy standalone report pages. */
  .ddowl-report .header { margin: 20px 0 38px; gap: 24px; }
  .ddowl-report .header .subject { font-size: clamp(32px, 4vw, 44px); margin-bottom: 14px; }
  .ddowl-report .header .variants { color: var(--owl-secondary); line-height: 1.8; margin-bottom: 8px; overflow-wrap: anywhere; }
  .ddowl-report .header .meta { color: var(--owl-quiet); line-height: 1.8; }
  .ddowl-report .header-actions .copy-help { color: var(--owl-quiet); }
  .ddowl-report .mode-tabs { display: flex; gap: 26px; border: 0; border-bottom: 1px solid var(--owl-line); border-radius: 0; margin-bottom: 28px; }
  .ddowl-report .mode-tab { padding: 10px 0 14px; color: var(--owl-secondary); border-bottom: 1px solid transparent; background: transparent; border-radius: 0; font-size: 13px; }
  .ddowl-report .mode-tab.active { color: var(--owl-ink); border-bottom-color: var(--owl-ink); background: transparent; }
  .ddowl-report .generate-block { padding: 24px 0 32px; }
  .ddowl-report .action-row { gap: 14px; max-width: 760px; }
  .ddowl-report .action-slot { min-width: 0; }
  .ddowl-report .reg-research-actions { flex-wrap: wrap; }
  .ddowl-report .reg-research-status, .ddowl-report .reg-research-rerun { color: var(--owl-quiet); line-height: 1.8; }
  .ddowl-report .progress-bar { border-radius: 0; border-color: var(--owl-line); background: var(--owl-panel); }
  .ddowl-report .progress-bar-fill { background: var(--owl-secondary); }
  .ddowl-report .progress-meta, .ddowl-report .progress-meta .pct { color: var(--owl-secondary); }
  .ddowl-report .download-link { color: var(--owl-ink); }
  .ddowl-report .funnel-block { padding: 22px; }
  .ddowl-report .funnel-row { grid-template-columns: 180px 65px minmax(0, 1fr) 44px; margin: 12px 0; }
  .ddowl-report .funnel-row .label, .ddowl-report .funnel-row .count { color: var(--owl-secondary); }
  .ddowl-report .funnel-row .pct { color: var(--owl-quiet); }
  .ddowl-report .funnel-row .bar { background: var(--owl-raised); border-radius: 0; }
  .ddowl-report .funnel-row .bar-fill { background: var(--owl-strong-line); }
  .ddowl-report .filter-chips { gap: 8px; margin-bottom: 18px; }
  .ddowl-report .chip { padding: 7px 10px; color: var(--owl-secondary); border-color: var(--owl-line); border-radius: 2px; }
  .ddowl-report .chip.active { color: var(--owl-bg); background: var(--owl-ink); border-color: var(--owl-ink); }
  .ddowl-report .chip.empty, .ddowl-report .chip.empty.active { color: var(--owl-quiet); background: var(--owl-panel); border-color: var(--owl-line); }
  .ddowl-report #tier3 { overflow-x: auto; }
  .ddowl-report .sources-table { min-width: 640px; }
  .ddowl-report .meta-block { color: var(--owl-quiet); border-color: var(--owl-line); font-family: inherit; overflow-wrap: anywhere; }
  .ddowl-report .meta-block .label { color: var(--owl-secondary); }
  .ddowl-report .local-browser-batch-controls { border-color: var(--owl-line); background: var(--owl-panel); border-radius: 2px; padding: 14px; gap: 10px; }
  .ddowl-report .local-browser-batch-controls button, .ddowl-report .local-browser-read-btn, .ddowl-report .local-browser-analyze-btn { color: var(--owl-ink); border-color: var(--owl-strong-line); border-radius: 2px; padding: 7px 10px; }
  .ddowl-report .local-browser-batch-controls button[disabled], .ddowl-report .local-browser-read-btn[disabled], .ddowl-report .local-browser-analyze-btn[disabled] { color: var(--owl-quiet); border-color: var(--owl-line); }
  .ddowl-report .local-browser-explanation { color: var(--owl-secondary); background: var(--owl-panel); border-color: var(--owl-strong-line); line-height: 1.8; }
  .ddowl-report .local-browser-connection-status { border-radius: 2px; }
  .ddowl-report .local-browser-result, .ddowl-report .local-browser-batch-status, .ddowl-report .local-browser-queue-state { color: var(--owl-quiet); }
  .ddowl-report .local-browser-result.success, .ddowl-report .local-browser-queue-state.recovered { color: var(--owl-green); }
  .ddowl-report .local-browser-result.warning, .ddowl-report .local-browser-queue-state.insufficient,
  .ddowl-report .local-browser-queue-state.timed_out, .ddowl-report .local-browser-queue-state.skipped { color: var(--owl-amber); }
  .ddowl-report .local-browser-result.error, .ddowl-report .local-browser-queue-state.blocked, .ddowl-report .local-browser-queue-state.failed { color: var(--owl-red); }
  .ddowl-report-detail .ddowl-report-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; margin-bottom: 38px; }
  .ddowl-report-detail .ddowl-report-heading > div { min-width: 0; }
  .ddowl-report-detail .ddowl-report-heading .btn { flex-shrink: 0; }
  .ddowl-report-detail #reportMeta { color: var(--owl-quiet); font-size: 11px; margin-top: 16px; line-height: 1.9; overflow-wrap: anywhere; }
  .ddowl-report-detail .ddowl-detail-action-row { margin: 12px 0; }
  .ddowl-record-page .ddowl-missed-row { display: flex; gap: 10px; align-items: flex-end; margin-top: 10px; }
}

@media screen and (max-width: 760px) {
  .ddowl-ipo .ddowl-ipo-heading { padding: 28px 22px 0; margin-bottom: 25px; }
  .ddowl-ipo > .container { padding: 0 22px 48px; }
  .ddowl-ipo .tab-container { width: calc(100% - 44px); gap: 24px; }
  .ddowl-ipo .toolbar { gap: 12px; }
  .ddowl-ipo .search-wrapper { max-width: none; flex-basis: 100%; }
  .ddowl-ipo .toolbar-spacer { display: none; }
  .ddowl-ipo .table-container { margin-top: 18px; }
  .ddowl-ipo .pagination { justify-content: flex-start; }
  .ddowl-reports .stat-card { padding: 17px; }
  .ddowl-reports .stat-value { font-size: 23px; }
  .ddowl-reports .modal-overlay { padding: 16px; }
  .ddowl-reports .modal { padding: 24px; }
  .ddowl-reports .modal-header { gap: 16px; }
  .ddowl-reports .modal-header h2 { font-size: 29px; }
  .ddowl-record-page .finding-card { padding: 20px; }
  .ddowl-record-page .report-readonly { padding: 20px; }
  .ddowl-report .header, .ddowl-report-detail .ddowl-report-heading { flex-wrap: wrap; gap: 18px; }
  .ddowl-report .header .header-text { flex-basis: 100%; }
  .ddowl-report .header-actions { align-items: flex-start; max-width: 100%; min-width: 0; flex-shrink: 1; }
  .ddowl-report .header-actions .copy-help { max-width: 100%; text-align: left; overflow-wrap: anywhere; }
  .ddowl-report .funnel-row { grid-template-columns: minmax(100px, 1fr) 48px minmax(30px, 1fr) 40px; gap: 8px; }
  .ddowl-record-page .funnel-table { min-width: 560px; }
  .ddowl-report .local-browser-row { flex-wrap: wrap; }
  .ddowl-report .local-browser-row a { flex-basis: 100%; }
}

@media screen and (max-width: 480px) {
  .ddowl-app .ddowl-page-heading h1, .ddowl-app .ddowl-report-heading h1 { font-size: 35px; }
  .ddowl-ipo .tab-container { gap: 21px; }
  .ddowl-ipo .tab { font-size: 12px; }
  .ddowl-ipo .tab-count { margin-left: 2px; font-size: 10px; }
  .ddowl-ipo .count-badge { margin-left: 0; white-space: normal; }
  .ddowl-reports .stats-ribbon { flex-wrap: nowrap; }
  .ddowl-reports .stat-card { padding: 15px 12px; }
  .ddowl-reports .stat-label { font-size: 9px; letter-spacing: 0; }
  .ddowl-reports .stat-value { font-size: 20px; }
  .ddowl-reports .search-row { flex-wrap: wrap; }
  .ddowl-reports .search-row .search-bar { flex-basis: 100%; }
  .ddowl-reports .modal-overlay { padding: 8px; }
  .ddowl-reports .modal { padding: 18px; }
  .ddowl-reports .modal-header { flex-wrap: wrap; }
  .ddowl-reports .modal-header > div { margin-left: auto; }
  .ddowl-record-page .finding-card { padding: 17px; }
  .ddowl-record-page .finding-headline { font-size: 14px; }
  .ddowl-record-page .finding-summary, .ddowl-record-page .finding-detail { font-size: 12px; }
  .ddowl-record-page .ddowl-inset { padding: 14px; }
  .ddowl-record-page .report-readonly { padding: 17px; font-size: 13px; }
  .ddowl-record-page .quality-rating-label { flex-basis: 100%; }
  .ddowl-record-page .quality-rating { gap: 5px; }
  .ddowl-record-page .rating-dot { width: 23px; height: 27px; }
  .ddowl-record-page .missed-row, .ddowl-record-page .missed-input-row, .ddowl-record-page .ddowl-missed-row { flex-wrap: wrap; }
  .ddowl-record-page .missed-row textarea, .ddowl-record-page .missed-input-row textarea, .ddowl-record-page .ddowl-missed-row textarea { flex-basis: 100%; }
  .ddowl-report .action-row { flex-direction: column; }
  .ddowl-report .funnel-block { padding: 14px; }
  .ddowl-report .funnel-row { grid-template-columns: minmax(85px, 1fr) 40px 40px; gap: 6px; }
  .ddowl-report .funnel-row .bar { display: none; }
  .ddowl-report .nm-item { flex-wrap: wrap; }
  .ddowl-report .nm-headline { flex-basis: 100%; }
  .ddowl-report .nm-reason { max-width: 100%; margin-left: 0; text-align: left; }
}

@media print {
  .ddowl-app [data-ddowl-shell], .ddowl-app .ddowl-report-breadcrumb,
  .ddowl-app .ddowl-page-nav { display: none !important; }
}
