.demand-workbench { --dw-muted:#58687d; width:100%; min-width:0; color:var(--ink); padding:20px; }
.demand-workbench * { box-sizing:border-box; }
.dw-heading { display:flex; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; }
.dw-heading h2 { margin:0 0 8px; font-size:18px; }
.dw-heading p,.dw-drop p,.dw-batch-info p { margin:6px 0; font-size:13px; color:var(--dw-muted); line-height:1.6; }
.dw-counts { font-variant-numeric:tabular-nums; font-weight:600; }
.dw-intake { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.8fr); gap:20px; margin-top:20px; }
.dw-intake > div { min-width:0; }
.dw-field { display:flex; flex-direction:column; gap:6px; margin-bottom:10px; min-width:0; font-size:12px; }
.dw-field > span { color:var(--dw-muted); }
.dw-field input,.dw-field select,.dw-field textarea { width:100%; min-width:0; min-height:38px; border:1px solid #bbc6d5; border-radius:10px; padding:8px 10px; font:inherit; font-size:13px; background:white; color:var(--ink); caret-color:var(--blue); }
.dw-field textarea { min-height:100px; resize:vertical; line-height:1.6; }
.dw-field input[type=file] { padding:8px; background:#fff; }
.dw-field input:disabled,.dw-field select:disabled { background:#f3f5f8; color:#526176; opacity:1; }
.demand-workbench :is(input,select,textarea,summary,button,a):focus-visible { outline:2px solid var(--blue); outline-offset:3px; }
.demand-workbench ::selection { color:#172e51; background:#d5e3fa; }
.dw-drop { border:1px dashed #95a9c4; border-radius:12px; background:#f5f8fc; padding:16px; }
.dw-drop strong { font-size:14px; }
.dw-dragging .dw-drop { border-style:solid; background:#e5eefb; }
.dw-feedback { min-height:22px; margin:12px 0; color:#36597f; font-size:13px; overflow-wrap:anywhere; }
.dw-feedback:empty { min-height:0; margin:12px 0; }
.dw-error,.dw-warning { color:#884016 !important; }
.dw-materials { padding:14px 0; border-block:1px solid var(--line); }
.demand-workbench summary { font-size:13px; cursor:pointer; padding-block:5px; color:#3c5274; }
.dw-material { display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding:12px 0; border-bottom:1px solid #e4e9f0; font-size:13px; }
.dw-material:last-child { border-bottom:0; }
.dw-material > div { flex:1 1 180px; overflow-wrap:anywhere; }
.dw-material span { display:block; color:var(--dw-muted); font-size:12px; margin-top:4px; }
.dw-material > details { flex:1 1 100%; }
.demand-workbench pre { white-space:pre-wrap; overflow-wrap:anywhere; font:inherit; font-size:12px; max-height:280px; overflow:auto; background:#f5f7fb; padding:12px; border-radius:8px; }
.dw-review-toolbar { display:flex; align-items:flex-end; flex-wrap:wrap; gap:12px; margin-top:20px; padding:12px; background:#f3f6fa; border:1px solid #e0e6ef; border-radius:12px; }
.dw-review-toolbar .dw-field { margin:0; flex:1 1 220px; }
.dw-review-toolbar .dw-field:last-child { flex:0 1 160px; }
.dw-batch-info { margin:12px 0; overflow-wrap:anywhere; }
.dw-table-scroll { width:100%; overflow:auto; border:1px solid var(--line); border-radius:12px; }
.dw-table { border-collapse:collapse; width:100%; min-width:1070px; font-size:13px; table-layout:fixed; }
.dw-table th { text-align:start; background:#f1f4f9; color:#435671; font-size:12px; font-weight:600; padding:12px; border-bottom:1px solid #d6dfeb; }
.dw-table th:nth-child(1) { width:21%; }.dw-table th:nth-child(2) { width:26%; }.dw-table th:nth-child(3) { width:10%; }.dw-table th:nth-child(4) { width:23%; }.dw-table th:nth-child(5) { width:20%; }
.dw-table td { padding:14px 12px; border-bottom:1px solid #dfe5ee; vertical-align:top; overflow-wrap:anywhere; white-space:normal; }
.dw-table tr:last-child td { border-bottom:0; }
.dw-source strong { font-weight:600; line-height:1.6; white-space:pre-wrap; }
.dw-source p,.dw-selection,.dw-state p { color:var(--dw-muted); font-size:12px; line-height:1.6; margin:8px 0; }
.dw-state .button { margin-bottom:10px; width:100%; white-space:normal; }
.dw-status { display:block; margin-bottom:12px; font-size:13px; }.dw-adopted { color:#23614b; }.dw-ignored { color:#58687d; }.dw-pending { color:#864b1c; }
.dw-line-ids { overflow-wrap:anywhere; }
.dw-empty { text-align:center; padding:32px 16px !important; color:var(--dw-muted); }
.dw-pager { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:16px; margin-top:16px; color:var(--dw-muted); font-size:12px; font-variant-numeric:tabular-nums; }
.demand-workbench .button:disabled { cursor:default; opacity:.6; }
@media(max-width:700px) { .demand-workbench { padding:16px; }.dw-intake { grid-template-columns:minmax(0,1fr); gap:16px; }.dw-field input,.dw-field select,.dw-field textarea { font-size:16px; min-height:44px; }.demand-workbench .button { min-height:44px; }.dw-counts { flex:1 1 100%; }.dw-table { min-width:1180px; }.dw-review-toolbar .dw-field:last-child { flex:1 1 160px; } }
