.wf-toolbar { display:flex; gap:12px; align-items:center; flex-wrap:wrap; padding:12px 0; }
.wf-toolbar h2 { margin:0; font-size:18px; }
.wf-toolbar label { display:flex; gap:8px; align-items:center; }
.wf-toolbar select { max-width:300px; }
.wf-grow { flex:1; }
.wf-field { display:grid !important; gap:6px; min-width:0; font-size:14px; }
.wf-field > span { font-weight:600; }
.wf-field input,.wf-field select,.wf-field textarea,.wf-toolbar select,.wf-rule input,.wf-rule select,.wf-check-edit input[type=text] { min-width:0; padding:9px 10px; border:1px solid var(--line); border-radius:4px; background:var(--panel); color:var(--ink); width:100%; }
.wf-field textarea { resize:vertical; }
.wf-dialog { width:760px; max-width:calc(100vw - 24px); max-height:calc(100dvh - 32px); padding:0; border:1px solid var(--line); border-radius:6px; background:var(--panel); color:var(--ink); }
.wf-dialog::backdrop { background:rgba(0,0,0,.55); }
.wf-dialog form { margin:0; }
.wf-dialog header,.wf-dialog footer { display:flex; align-items:center; gap:12px; padding:16px 20px; background:var(--panel); }
.wf-dialog header { border-bottom:1px solid var(--line); position:sticky; top:0; z-index:1; }
.wf-dialog header h2 { font-size:20px; margin:0; flex:1; overflow-wrap:anywhere; }
.wf-dialog footer { border-top:1px solid var(--line); justify-content:flex-end; position:sticky; bottom:0; z-index:1; }
.wf-dialog-body { padding:20px; display:grid; gap:16px; }
.wf-dialog h3 { font-size:16px; margin:4px 0; }
.wf-close { border:0; border-radius:4px; background:transparent; color:var(--ink); width:36px; height:36px; flex:0 0 36px; font-size:24px; }
.wf-close:hover { background:var(--gray-chip); }
.wf-error { color:var(--red); margin:0; padding:0 20px 12px; white-space:pre-wrap; }
.wf-error:empty { display:none; }
.wf-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.wf-check { display:inline-flex; align-items:center; gap:6px; font-size:14px; }
.wf-check input { width:16px; height:16px; accent-color:var(--red); }
.wf-rule { display:grid; grid-template-columns:minmax(100px,1fr) minmax(100px,1fr) minmax(100px,1.4fr) 36px; gap:8px; margin-bottom:10px; }
.wf-library-row,.wf-time-row { display:flex; align-items:center; gap:16px; border-bottom:1px solid var(--line); padding:12px 0; }
.wf-library-row strong,.wf-time-row > div { flex:1; min-width:0; overflow-wrap:anywhere; }
.wf-library-row span,.wf-time-row span { color:var(--muted); font-size:13px; }
.wf-time-row > div > span { display:block; padding-top:4px; }
.wf-time-row p { white-space:pre-wrap; margin:6px 0 0; font-size:14px; }
.wf-user-meta { display:flex; align-items:center; flex-wrap:wrap; gap:16px; grid-column:1 / -1; width:100%; font-size:13px; color:var(--muted); border-top:1px solid var(--line); padding-top:8px; }
.user-setting-row:has(.wf-user-meta) { flex-wrap:wrap; }
.wf-check-edit { display:grid; grid-template-columns:minmax(0,1fr) auto 36px; gap:12px; margin-bottom:10px; }
.wf-checklist-item { display:flex; gap:12px; padding:10px 0; border-bottom:1px solid var(--line); }
.wf-checklist-item input { width:18px; height:18px; accent-color:var(--red); flex:0 0 18px; }
.wf-checklist-item span { flex:1; overflow-wrap:anywhere; }
.wf-checklist-item small { color:var(--muted); }
.wf-deadlines { display:flex; flex-wrap:wrap; gap:16px; font-size:14px; padding-bottom:8px; }
.wf-sla-overdue { color:var(--red); }
.wf-sla-dueSoon { color:#b77912; }
.wf-sla-onTrack,.wf-sla-completed { color:#23845e; }
.wf-segments { display:flex; padding:6px 10px; gap:16px; border:1px solid var(--line); border-radius:4px; margin:0; }
.wf-composer { align-items:flex-end; }
#wfDraftStatus { font-size:12px; color:var(--muted); max-width:340px; }
.wf-private { color:var(--red); font-size:12px; font-style:normal; margin-left:8px; }
.wf-report { border-top:1px solid var(--line); padding:20px 0; margin-top:20px; }
.wf-report h2 { font-size:18px; }
.wf-report-scroll { overflow:auto; }
.wf-report table { border-collapse:collapse; width:100%; font-size:14px; }
.wf-report th,.wf-report td { text-align:left; border-bottom:1px solid var(--line); padding:10px; }
.wf-work .wf-toolbar > select { padding:8px; }
.wf-deadline-band { padding:0 0 20px; border-bottom:1px solid var(--line); margin-bottom:20px; }
.wf-deadline-band[hidden] { display:none; }
.wf-deadline-band h2 { font-size:18px; margin:0; }
.wf-dialog fieldset { border:1px solid var(--line); border-radius:4px; min-width:0; }
.wf-dialog legend { font-size:14px; font-weight:600; }
@media(max-width:650px) {
  .wf-grid { grid-template-columns:1fr; }
  .wf-rule { grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px; }
  .wf-rule [data-rule-value] { grid-column:1 / 3; grid-row:2; }
  .wf-rule button { grid-column:3; grid-row:1 / 3; align-self:center; }
  .wf-time-row { flex-wrap:wrap; gap:10px; }
  .wf-time-row > div { flex-basis:100%; }
  .wf-toolbar label { max-width:100%; }
  .wf-toolbar select { max-width:100%; }
  .wf-dialog-body { padding:16px; }
  .wf-check-edit { grid-template-columns:minmax(0,1fr) 36px; }
  .wf-check-edit > input { grid-column:1 / -1; }
  .wf-user-meta { gap:10px; }
}
