/* Data preparation workbench: dark tool chrome, cool cells, source/stage/output hierarchy. */
:root{--ink:#202c3a;--muted:#536479;--green:#254d72;--deep:#153955;--mint:#dfe9f3;--paper:#e6ebf0;--line:#b5c3d0;--white:#fff;--radius:0;font-family:Arial,Helvetica,sans-serif;background:#e6ebf0}.top{background:#202c3a;color:#f0f5fa;border:0;padding-block:14px}.top .brand,.top a{color:#f0f5fa}.mark{background:#dbe8f3;color:#202c3a}#navigation a{color:#dae7f2}#navigation a[aria-current=page]{background:#dbe8f3;color:#202c3a}.storage-strip{background:#d2dce6;color:#34485c;border:0;font-size:12px;padding-block:8px}.page-head{margin:12px 0 20px;border-bottom:2px solid #202c3a;padding-bottom:16px}.page-head h1{font-size:36px;letter-spacing:-.04em}.page-head p{font-size:14px}.eyebrow,.mono,.schema,.bench-schema,.bench-stage,.source-row{font-family:ui-monospace,Consolas,monospace}.toolbar{background:#d6e0e9;border:0;padding:14px;align-items:center}.workspace-line{grid-template-columns:minmax(170px,.9fr) minmax(0,1.2fr) minmax(200px,.8fr);gap:20px;border:0;border-bottom:1px solid #a8b9c8;padding:24px 0;background:transparent}.workspace-line h2{font-size:24px}.workspace-source{background:#f9fbfd;border:0;border-left:3px solid #8ea6bb;padding:18px;font:13px/1.6 ui-monospace,monospace}.workspace-result{font-size:13px}.source-bench{grid-template-columns:220px minmax(0,1fr);gap:20px}.bench-rail{background:#d3dee8;border:0;padding:18px}.bench-rail p{font:12px/1.6 ui-monospace,monospace}.bench-stages{background:#202c3a;border-radius:0}.bench-stage{font-size:12px;border-radius:0}.bench-stage[aria-current]{background:#dbe8f3;color:#202c3a}.bench-work{border:0;background:#fff}.table-scroll{max-height:65vh;border:1px solid #b5c3d0;background:#fff}.table-scroll table{font:13px/1.5 ui-monospace,Consolas,monospace;font-variant-numeric:tabular-nums}.table-scroll th{position:sticky;top:0;z-index:1;background:#dbe6f0;color:#20354b;border-color:#a6b8ca}.table-scroll td{padding:9px 12px;border-color:#d0dbe5}.table-scroll tr:nth-child(even){background:#f0f5f9}.table-scroll caption{background:#fff;color:#34485c}.panel,.project-card,.editor,.empty,.button,button{border-radius:0;box-shadow:none}.primary{background:#254d72!important;border-color:#254d72!important}.panel{border-top:2px solid #93a9bc}.entry-mode-banner{font:12px/1.4 Arial,sans-serif;background:#edf3f8;color:#2c4259;border:0;border-left:3px solid #254d72;border-radius:0;padding:10px 14px;gap:4px 16px;margin-bottom:16px}.entry-mode-banner strong,.entry-mode-banner span{flex-basis:auto}.entry-mode-banner a{color:#254d72}
@media(max-width:700px){.top{padding:12px 16px}.top #menu{background:#dbe8f3;color:#202c3a}main{padding:12px 16px 36px}.page-head{margin:10px 0 16px;gap:12px}.page-head h1{font-size:30px}.entry-mode-banner{font-size:12px;padding:10px;margin-bottom:12px}.entry-mode-banner strong,.entry-mode-banner span{flex-basis:100%}.toolbar{padding:12px}.workspace-line{display:block;padding:20px 0}.workspace-source{margin:14px 0;padding:14px}.workspace-result .button{width:100%}.source-bench{display:block}.bench-rail{padding:14px;margin-bottom:16px}.bench-schema{display:flex;flex-wrap:wrap;gap:8px}.bench-stages{gap:8px;padding:12px}.bench-stage{font-size:12px;min-height:44px}.table-scroll{max-height:55vh}.bench-comparison{grid-template-columns:1fr}.bench-work{min-width:0}.page-head .button{font-size:12px}.entry-mode-banner a{font-size:12px}}

.bench-validation{background:#e4edf5;border-left:4px solid #254d72;padding:16px 18px;margin:0 0 18px}.bench-validation h2{font-size:19px;margin:0 0 8px}.bench-validation p{font:13px/1.6 ui-monospace,monospace;margin:8px 0}.bench-validation summary{min-height:44px;padding:12px 0;cursor:pointer}.bench-validation .actions{gap:8px}.bench-validation .button{font-size:12px}.bench-validation ul{font-size:13px}#bench-original{scroll-margin-top:20px}

.bench-stage[aria-pressed=true]{background:#dbe8f3;color:#202c3a;border-color:#8ea6bb}@media print{.bench-validation{background:white;color:black}.table-scroll{max-height:none;overflow:visible}.table-scroll th{position:static}}

/* Full-dataset inspection controls appear only when records exceed one page. */
.data-controls{display:grid;grid-template-columns:2fr 1.2fr 1fr;gap:12px;background:#edf3f8;padding:14px}.data-controls:empty{display:none}.data-controls .field{margin:0}.data-selection{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}.data-selection:empty{display:none}.data-selection p{flex-basis:100%;font-size:13px;margin:4px 0}.data-selection button,.pagination button{min-height:44px}.row-selection{width:60px;min-width:60px;max-width:60px;text-align:center}.row-selection input{width:24px;height:24px;cursor:pointer;accent-color:#254d72}.row-selection:has(input){padding:0}.row-selection input{margin:10px}.table-excerpt{font-size:13px;color:#34485c;overflow-wrap:anywhere}.import-dry-run{min-width:0;margin-top:18px}.import-counts{font:600 14px/1.7 ui-monospace,monospace;padding:14px;background:#dbe8f3}.import-dry-run .error{margin-top:12px}
@media(max-width:760px){.data-controls{grid-template-columns:1fr;padding:12px}.data-selection button{width:100%}.pagination{justify-content:space-between}.pagination span{width:100%}.pagination button{flex:1}.import-dry-run .schema{display:block}.import-dry-run .schema span{display:block;margin-block:8px}}
@media print{.data-controls,.data-selection,.row-selection{display:none!important}.data-view .table-scroll table{table-layout:fixed;width:100%;min-width:0}.data-view .table-scroll td,.data-view .table-scroll th{min-width:0;max-width:none;padding:3pt;font-size:8pt;overflow-wrap:anywhere;word-break:break-word}.data-view .table-excerpt{display:block;color:black;font-size:9pt}.data-view .table-scroll{border:0;width:100%}.bench-comparison{display:block}.bench-original,.bench-output,.panel{break-inside:auto}}

.row-choice{display:flex;align-items:center;justify-content:center;width:44px;min-height:44px;margin:auto;cursor:pointer}.row-choice input{margin:0}.table-scroll th.row-selection{padding:8px;min-width:64px}

/* Operational sans-serif; monospace identifies actual data structure and identity. */
:root { --table-ui:'DM Sans Local','DM Sans Fallback',Arial,sans-serif; --table-code:ui-monospace,SFMono-Regular,Consolas,monospace; font-family:var(--table-ui); }
body,input,select,textarea,button,.button,.entry-mode-banner { font-family:var(--table-ui); }
h1,h2,h3,.brand,.brand-note,.eyebrow,.bench-stage,.source-row,.workspace-source,.bench-rail p,.bench-validation p,.import-counts,footer { font-family:var(--table-ui); }
.brand strong { font-weight:750; letter-spacing:-.04em; }
.brand-note,.eyebrow { font-weight:700; letter-spacing:.09em; }
.page-head h1 { font-size:clamp(2rem,3vw,2.7rem); line-height:1.12; font-weight:700; letter-spacing:-.04em; }
.page-head { margin-block:10px 18px; padding-bottom:14px; gap:20px; }
.page-head p:not(.eyebrow) { font-size:1rem; line-height:1.55; margin-bottom:12px; }
.page-head .eyebrow { font-size:.75rem; }
.workspace-line { padding-block:20px; gap:20px; }
.workspace-line h2 { margin-block:12px; font-weight:700; }
.workspace-line p { line-height:1.55; }
.workspace-source { font-size:.875rem; line-height:1.5; padding:16px; gap:8px; }
.workspace-source strong { font-weight:700; }
.workspace-result { font-size:.875rem; }
.bench-rail p,.bench-validation p { font-size:.875rem; line-height:1.55; }
.bench-stage { font-size:.85rem; font-weight:600; }
.table-scroll table { font-family:var(--table-ui); font-size:.875rem; line-height:1.5; font-variant-numeric:tabular-nums; }
.table-scroll th { font-family:var(--table-ui); font-weight:700; }
.import-counts { font-size:.9rem; font-variant-numeric:tabular-nums; }
.mono,.source-row .mono,.workspace-source .mono,.workspace-source>p:nth-of-type(2),.schema,.schema span,.bench-schema,code,pre,.raw { font-family:var(--table-code); }
.storage-strip { padding-block:4px; font-size:.8rem; }
#storage-status { flex:1 1 17em; min-width:0; }
.storage-strip a { min-height:44px; display:flex; align-items:center; padding-block:0; }
.entry-mode-banner { padding-block:6px; margin-bottom:12px; }
button,.button { overflow-wrap:anywhere; }
@media(max-width:700px) {
 .top { padding-block:8px; }
 .storage-strip { display:flex; flex-wrap:wrap; gap:4px 10px; padding-block:4px; }
 .storage-strip .local-dot { display:none; }
 .storage-strip a { margin:0; max-width:100%; }
 main { padding-top:10px; }
 .entry-mode-banner { padding:7px 10px; margin-bottom:10px; }
 .page-head { gap:10px; margin-bottom:14px; padding-bottom:12px; }
 .page-head h1 { font-size:2rem; }
 .page-head>.actions { margin-top:0; }
 .workspace-line { padding-block:18px; }
 .workspace-source { padding:14px; margin-block:12px; }
 .bench-stage { font-size:.85rem; }
}
@media print { .table-scroll table { font-family:var(--table-ui); } }
