/* СтройМенеджер — Bo'sh holat, workflow progress, 3-ustunli tex.otchyot */
/* ═══════════════════════════════════════════════════════════════════
   EMPTY STATE
═══════════════════════════════════════════════════════════════════ */
.empty { text-align:center; padding:50px 20px; color:var(--text-dim); }
.empty-icon { font-size:42px; margin-bottom:12px; opacity:.35; }

/* ═══════════════════════════════════════════════════════════════════
   WORKFLOW (progress)
═══════════════════════════════════════════════════════════════════ */
.workflow {
  display:flex; flex-wrap:wrap;
  align-items:center; gap:4px;
  margin:14px 0 18px;
}
.wf-step {
  display:flex; align-items:center; gap:5px;
  padding:5px 10px;
  background:var(--bg-card2);
  border:1px solid var(--border);
  border-radius:6px;
  font-size:11px; font-weight:600; color:var(--text-muted);
  line-height:1.2;
}
.wf-step.done    { background:var(--green-bg); border-color:var(--green); color:var(--green); }
.wf-step.current { background:var(--amber-bg); border-color:var(--amber); color:var(--amber); }
.wf-arrow { color:var(--text-dim); font-size:14px; padding:0 2px; }

/* ═══════════════════════════════════════════════════════════════════
   3-COLUMN TEX.OTCHYOT
═══════════════════════════════════════════════════════════════════ */
.tr3-wrap { overflow-x:auto; border:1px solid var(--border); border-radius:10px; }
.tr3-table { width:100%; border-collapse:collapse; min-width:680px; }
.tr3-table thead tr.tr3-group th {
  padding:8px 10px;
  font-size:10px; font-weight:700;
  text-transform:uppercase; letter-spacing:.7px;
  border-bottom:1px solid var(--border);
  text-align:center;
}
.tr3-table thead tr.tr3-heads th {
  padding:8px 10px;
  font-size:10px; font-weight:700;
  color:var(--text-muted);
  text-transform:uppercase; letter-spacing:.7px;
  background:var(--bg-card2);
  border-bottom:2px solid var(--border);
}
.tr3-table tbody td {
  padding:9px 10px;
  border-bottom:1px solid rgba(42,46,63,.4);
  font-size:13px; vertical-align:middle;
}
.tr3-table tbody tr:last-child td { border-bottom:none; }
.tr3-table tfoot td {
  padding:9px 10px; font-weight:700; font-size:13px;
  border-top:2px solid var(--border);
  background:var(--bg-card2);
}
.col1-bg { background:rgba(55,138,221,.06); }
.col2-bg { background:rgba(39,168,106,.06); }
.col3-bg { background:rgba(239,159,39,.06); }
.col1-head { background:rgba(55,138,221,.15); color:var(--blue); }
.col2-head { background:rgba(39,168,106,.15); color:var(--green); }
.col3-head { background:rgba(239,159,39,.15); color:var(--amber); }
.tr3-input {
  width:90px;
  background:var(--bg); border:1px solid var(--border);
  border-radius:5px; color:var(--text);
  padding:5px 8px; font-size:12px;
  text-align:right;
  transition:border-color .12s;
}
.tr3-input:focus { border-color:var(--green); }
.tr3-neg  { color:var(--red);   font-weight:700; }
.tr3-pos  { color:var(--green); font-weight:700; }
.tr3-zero { color:var(--text-muted); }

/* Month card */
.tr3-month-card {
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:10px;
  margin-bottom:12px;
  overflow:hidden;
}
.tr3-month-hdr {
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 16px;
  background:var(--bg-card2);
  border-bottom:1px solid var(--border);
  cursor:pointer;
  user-select:none;
}
.tr3-month-hdr:hover { background:var(--bg-hover); }
.tr3-month-title { font-weight:700; font-size:14px; }
.tr3-month-body { display:none; }
.tr3-month-body.open { display:block; }
.grand-total-card {
  border:2px solid var(--orange) !important;
  margin-top:18px;
}
.grand-total-card .tr3-month-hdr {
  background:rgba(232,103,26,.12);
  cursor:default;
}
.grand-total-card .tr3-month-title { color:var(--orange); }

/* Material row */
.material-row {
  display:grid;
  grid-template-columns:1fr 90px 100px 36px;
  gap:8px;
  align-items:center;
  margin-bottom:7px;
}
.material-row-with-note {
  display:grid;
  grid-template-columns:1fr 90px 100px 36px;
  gap:8px;
  align-items:center;
  margin-bottom:4px;
}
.material-note-row {
  margin-bottom:10px;
  padding-left:2px;
}
.material-note-input {
  width:100%;
  background:var(--bg); border:1px solid var(--border);
  border-radius:6px; color:var(--text);
  padding:6px 10px; font-size:12px;
  font-style:italic;
  transition:border-color .12s;
}
.material-note-input:focus { border-color:var(--orange); }
.material-note-input::placeholder { color:var(--text-dim); font-style:italic; }
.mat-input {
  background:var(--bg); border:1px solid var(--border);
  border-radius:6px; color:var(--text);
  padding:8px 10px; font-size:13px;
  width:100%;
  transition:border-color .12s;
}
.mat-input:focus { border-color:var(--orange); }
.btn-remove {
  background:var(--red-bg); border:1px solid var(--red);
  border-radius:6px; color:var(--red);
  width:36px; height:36px;
  display:flex; align-items:center; justify-content:center;
  font-size:15px;
  cursor:pointer;
  transition:background .12s;
}
.btn-remove:hover { background:rgba(226,75,74,.25); }

/* ═══════════════════════════════════════════════════════════════════
