/* Text/data tools extend the existing developer panels and controls. */
.text-data-page #inner-headline .breadcrumb a, .text-data-page #inner-headline .breadcrumb .active, .text-data-page #inner-headline .breadcrumb > li + li:before { color: #001a4d; }
.text-data-page #inner-headline .breadcrumb a:hover, .text-data-page #inner-headline .breadcrumb a:focus { color: #001a4d; text-decoration: underline; }
.text-data-page .tool-options:empty { display: none; }
.text-data-page .tool-panel-header { flex-wrap: wrap; }
.text-data-page .text-options-note { flex-basis: 100%; margin: 0; }
.text-data-page .tool-options > *, .text-data-page #tool-statistics { min-width: 0; max-width: 100%; }
.text-data-page .text-data-result-panel, .text-data-page .text-data-source { margin-top: 20px; }
.text-data-page .text-data-source summary { cursor: pointer; color: #17335d; padding: 10px 0; font-weight: 700; }
.text-data-page .stat-grid, .text-data-page .text-data-statistics {
    display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0;
}
.text-data-page .stat-grid > div, .text-data-page .text-data-statistics > div {
    min-width: 0; padding: 12px; border: 1px solid #dbe4f0; border-radius: 8px; background: #fbfcfe;
}
.text-data-page .stat-grid dt, .text-data-page .text-data-statistics dt { color: #526176; font-size: 12px; }
.text-data-page .stat-grid dd, .text-data-page .text-data-statistics dd { margin: 5px 0 0; color: #172b4d; overflow-wrap: anywhere; font-size: 18px; font-weight: 700; }
.text-data-page .text-data-statistics { margin-top: 16px; grid-template-columns: repeat(auto-fit,minmax(140px,1fr)); }
.text-data-page .text-data-preview { min-width: 0; max-width: 100%; overflow-wrap: anywhere; }
.text-data-page .text-diff-list { max-height: 540px; overflow: auto; border: 1px solid #c8d4e3; border-radius: 8px; }
.text-data-page .text-diff-row { display: grid; grid-template-columns: 24px 44px 44px minmax(0,1fr); gap: 6px; padding: 6px 9px; font: 13px/1.55 Consolas,monospace; }
.text-data-page .text-diff-row.is-added { background: #e9f8ef; color: #155934; }
.text-data-page .text-diff-row.is-removed { background: #fff0f0; color: #852929; }
.text-data-page .text-diff-row.is-unchanged { background: #fbfcfe; color: #334155; }
.text-data-page .text-diff-number { text-align: right; color: #526176; font-size: 12px; }
.text-data-page .text-diff-marker { font-weight: 800; }
.text-data-page .text-diff-content { white-space: pre-wrap; overflow-wrap: anywhere; min-width: 0; }
.text-data-page .text-data-table-wrap { max-width: 100%; max-height: 420px; overflow: auto; border: 1px solid #c8d4e3; border-radius: 8px; }
.text-data-page .text-data-table { border-collapse: collapse; width: max-content; min-width: 100%; }
.text-data-page .text-data-table th, .text-data-page .text-data-table td { min-width: 90px; max-width: 300px; padding: 9px 12px; border: 1px solid #dbe4f0; white-space: pre-wrap; overflow-wrap: anywhere; vertical-align: top; }
.text-data-page .text-data-table th { background: #f1f7ff; color: #17335d; }
.text-data-page .csv-column-options { display: flex; flex-wrap: wrap; gap: 8px 16px; max-height: 200px; overflow: auto; padding: 8px; }
.text-data-page .csv-column-options label { margin: 0; overflow-wrap: anywhere; }
.text-data-page .csv-file-info { flex-basis: 100%; overflow-wrap: anywhere; }
.text-data-page[data-tool="113"] #tool-preview, .text-data-page[data-tool="114"] #tool-preview {
    min-height: 310px; max-height: 620px; overflow: auto; padding: 16px; border: 1px solid #c8d4e3; border-radius: 8px; background: #fff; color: #334155; line-height: 1.7;
}
.text-data-page #tool-preview h1 { font-size: 28px; }
.text-data-page #tool-preview h2 { font-size: 24px; }
.text-data-page #tool-preview h3 { font-size: 20px; }
.text-data-page #tool-preview h4, .text-data-page #tool-preview h5, .text-data-page #tool-preview h6 { font-size: 17px; }
.text-data-page #tool-preview h1, .text-data-page #tool-preview h2, .text-data-page #tool-preview h3, .text-data-page #tool-preview h4, .text-data-page #tool-preview h5, .text-data-page #tool-preview h6 { margin: 16px 0 10px; color: #172b4d; overflow-wrap: anywhere; }
.text-data-page #tool-preview > :first-child { margin-top: 0; }
.text-data-page #tool-preview pre { max-width: 100%; overflow: auto; white-space: pre-wrap; overflow-wrap: anywhere; padding: 12px; background: #f3f6fa; border: 1px solid #dbe4f0; border-radius: 6px; color: #172b4d; }
.text-data-page #tool-preview pre code { white-space: inherit; }
.text-data-page #tool-preview blockquote { border-left: 4px solid #bed5ef; margin: 12px 0; padding: 8px 14px; font-size: 15px; }
.text-data-page[data-tool="113"] #tool-preview table, .text-data-page[data-tool="114"] #tool-preview table { display: block; max-width: 100%; overflow: auto; border-collapse: collapse; margin: 12px 0; }
.text-data-page[data-tool="113"] #tool-preview th, .text-data-page[data-tool="113"] #tool-preview td, .text-data-page[data-tool="114"] #tool-preview th, .text-data-page[data-tool="114"] #tool-preview td { border: 1px solid #c8d4e3; padding: 7px 12px; }
.text-data-page #tool-preview .md-image-placeholder { color: #526176; background: #f1f7ff; padding: 2px 5px; border-radius: 3px; }
@media (max-width: 600px) {
    .text-data-page .text-diff-row { grid-template-columns: 18px 30px 30px minmax(0,1fr); gap: 4px; padding: 6px; }
    .text-data-page .stat-grid dd { font-size: 17px; }
    .text-data-page .tool-options .option-field { flex: 1 1 100%; }
}
