/* Business workflow: retain the existing ledger-like typography and rules. */
.wf-toolbar { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:12px 0; }
.wf-notice { padding:12px 16px; border-left:3px solid var(--color-accent); background:var(--color-accent-soft); font-size:var(--text-sm); margin:12px 0; overflow-wrap:anywhere; }
.wf-notice--warning { border-color:var(--color-warning); background:var(--color-warning-soft); }
.wf-check { display:flex; align-items:center; gap:8px; font-size:var(--text-sm); white-space:nowrap; }
.wf-card-meta { font-size:var(--text-xs); margin:8px 0; color:var(--color-ink-2); overflow-wrap:anywhere; }
.wf-project { border-top:3px solid var(--color-accent); }
.wf-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; }
.wf-heading h2 { margin:0; font-size:var(--text-xl); }
.wf-eyebrow { font-size:var(--text-xs); color:var(--color-ink-2); margin:0 0 4px; }
.wf-steps { display:flex; gap:0; overflow-x:auto; margin:20px 0; padding-bottom:4px; }
.wf-step { flex:1 0 115px; border:1px solid var(--color-line); border-right:0; background:var(--color-paper-2); text-align:left; padding:10px 12px; color:var(--color-ink-2); font:inherit; font-size:var(--text-sm); cursor:pointer; }
.wf-step:last-child { border-right:1px solid var(--color-line); }
.wf-step span { display:block; font:12px var(--font-num); margin-bottom:8px; opacity:.8; }
.wf-step.is-current { background:var(--color-accent); color:white; }
.wf-step:hover { box-shadow:inset 0 -3px var(--color-accent); }
.wf-focus { display:grid; grid-template-columns:2fr 1.5fr 1fr 1fr; gap:16px; padding:16px; background:var(--color-paper-2); border:1px solid var(--color-line); }
.wf-focus > div, .wf-finance > div { display:flex; flex-direction:column; gap:6px; min-width:0; overflow-wrap:anywhere; }
.wf-focus span, .wf-finance span { color:var(--color-ink-2); font-size:var(--text-xs); }
.wf-info { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 20px; padding:16px 0; margin:0; }
.wf-info dt { font-size:var(--text-xs); color:var(--color-ink-2); }
.wf-info dd { margin:3px 0 0; font-size:var(--text-sm); overflow-wrap:anywhere; }
.wf-finance { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:2px solid var(--color-line-2); border-bottom:1px solid var(--color-line); margin:16px 0 10px; }
.wf-finance > div { padding:12px; }
.wf-finance strong { font-family:var(--font-num); font-size:var(--text-lg); }
.wf-registers { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:20px 0; align-items:start; }
.wf-register { border:1px solid var(--color-line); min-width:0; }
.wf-register > summary { padding:14px; background:var(--color-paper-2); cursor:pointer; font-size:var(--text-sm); }
.wf-register > summary span { display:block; margin-left:16px; font-size:var(--text-xs); color:var(--color-ink-2); }
.wf-register-body { padding:14px; }
.wf-register-body > .field__hint { display:block; margin-bottom:12px; }
.wf-record { padding:14px 0; border-bottom:1px solid var(--color-line); }
.wf-record:last-child { border-bottom:0; padding-bottom:0; }
.wf-record header { display:flex; align-items:start; gap:8px; flex-wrap:wrap; font-size:var(--text-sm); }
.wf-record header strong { overflow-wrap:anywhere; }
.wf-record .badge { margin-left:auto; }
.wf-record.is-closed .badge { color:var(--color-success); background:var(--color-success-soft); }
.wf-record-meta { font-size:var(--text-xs); color:var(--color-ink-2); margin:6px 0; overflow-wrap:anywhere; }
.wf-record a { font-size:var(--text-sm); }
.wf-text { font-size:var(--text-sm); white-space:pre-wrap; overflow-wrap:anywhere; margin:8px 0; }
.wf-disclosure { margin:16px 0; padding:12px; border:1px solid var(--color-line); background:var(--color-paper); }
.wf-disclosure > summary { font-size:var(--text-sm); cursor:pointer; }
.wf-event { font-size:var(--text-xs); border-bottom:1px solid var(--color-line); padding:8px 0; overflow-wrap:anywhere; }
.wf-event ul { padding-left:20px; white-space:pre-wrap; }
.wf-error { color:var(--color-danger); font-size:var(--text-sm); white-space:pre-wrap; }
#wf-form .input, #wf-form .select, #wf-form .textarea { width:100%; min-width:0; }
#wf-form .field { min-width:0; }
@media (max-width: 850px) {
  .wf-focus { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wf-registers { grid-template-columns:minmax(0,1fr); }
}
@media (max-width: 520px) {
  .wf-info, .wf-finance { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wf-focus { padding:12px; gap:12px; }
  .wf-focus strong { font-size:var(--text-sm); }
  .wf-heading .btn { width:100%; }
  .wf-register .btn { min-height:40px; }
  .wf-finance > div { padding:10px 6px; }
  .wf-step { flex-basis:110px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; scroll-behavior:auto !important; }
}

#project-panel-workflow .wf-focus{grid-template-columns:repeat(2,minmax(0,1fr))}#project-panel-workflow .wf-registers{grid-template-columns:minmax(0,1fr)}#project-panel-workflow .wf-info,#project-panel-workflow .wf-finance{grid-template-columns:repeat(2,minmax(0,1fr))}#project-panel-workflow .wf-register .btn{min-height:44px}#project-panel-workflow .wf-steps{max-width:100%}.project-detail .detail-tabs{overflow-x:auto;white-space:nowrap}.project-detail .detail-tabs button{flex-shrink:0}
