/* 65-requests.css — work orders + punch list. */

.req-bar { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; flex-wrap: wrap; }
.req-title { font-size: 16px; flex: 1; }
.req-title-2 { margin: 26px 0 10px; flex: none; }

.req-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(270px, 1fr)); gap: 12px; }
.req-card { padding: 14px; display: flex; flex-direction: column; gap: 8px; }
.req-card.st-awaiting { border-color: var(--amber); box-shadow: 0 0 0 1px var(--amber), var(--shadow); }
.req-card.st-done { opacity: .72; }
.req-card-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.req-status { font-family: var(--font-draw); font-weight: 700; font-size: 10.5px; letter-spacing: .1em; color: var(--steel); }
.req-card.st-awaiting .req-status { color: var(--amber); }
.req-card.st-done .req-status { color: var(--stamp); }
.req-card-title { font-weight: 600; font-size: 15px; }
.req-scope { font-size: 12.5px; }
.req-leads { font-size: 13px; }
.req-lead {
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--ink); color: var(--card); border-radius: 2px;
  font-size: 10px; padding: 1px 5px; vertical-align: 1px;
}
:root[data-theme="dark"] .req-lead { color: #14181B; }
.req-meter { display: flex; align-items: center; gap: 8px; }
.req-meter .meter { flex: 1; }
.req-actions { display: flex; gap: 7px; flex-wrap: wrap; }
.req-signoff { font-size: 12px; }

.req-punchlist { display: flex; flex-direction: column; gap: 6px; }
.req-flag { display: flex; align-items: center; gap: 10px; padding: 8px 12px; flex-wrap: wrap; }
.req-flag.resolved { opacity: .6; }
.req-flag-what { min-width: 90px; }
.req-flag-note { flex: 1; min-width: 200px; font-size: 13.5px; }
