/* 工作汇报 */
.modal.modal-wr {
  width: min(640px, 100%);
  max-width: 100%;
  display: flex; flex-direction: column;
  max-height: min(94vh, 920px); padding: 0;
  overflow: hidden; background: var(--clr-bg);
}
.modal.modal-wr .wr-head {
  padding: 14px 16px 10px;
  background: var(--clr-card);
  border-bottom: 1px solid var(--clr-border-light);
}
.wr-body {
  flex: 1; min-height: 0; overflow-x: hidden; overflow-y: auto;
  padding: 12px 12px 20px;
  display: flex; flex-direction: column; gap: 12px;
  -webkit-overflow-scrolling: touch;
}
.wr-toolbar {
  display: flex; flex-direction: column; gap: 8px;
  padding: 12px; border-radius: 12px;
  background: var(--clr-card); border: 1px solid var(--clr-border-light);
  box-shadow: var(--shadow-sm);
  min-width: 0;
}
.wr-date-field { flex: none; width: 100%; min-width: 0; }
.wr-date-field .input {
  width: 100%; min-width: 0; max-width: 100%;
  box-sizing: border-box;
}
.wr-back-btn { align-self: flex-start; }
.wr-meta {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
  font-size: 12.5px; color: var(--clr-muted-fg); min-width: 0;
}
.wr-meta-name { font-weight: 600; color: var(--clr-fg); }
.wr-meta-pill {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 4px 10px; border-radius: 999px;
  background: var(--clr-bg); border: 1px solid var(--clr-border-light);
  color: var(--clr-fg); font-weight: 600; font-size: 12px;
  white-space: nowrap;
}
.wr-meta-pill.saved { background: var(--clr-success-soft); border-color: hsl(var(--success) / .30); color: hsl(143 64% 24%); }
.wr-meta-pill.draft { background: var(--clr-warning-soft); border-color: hsl(var(--warning) / .20); color: var(--clr-warning); }
.wr-edit-pane { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.wr-card {
  border: 1px solid var(--clr-border-light); border-radius: 14px; padding: 14px 12px 12px;
  background: var(--clr-card); box-shadow: var(--shadow-sm);
  min-width: 0; overflow: hidden;
}
.wr-card-head {
  display: flex; align-items: flex-start; gap: 10px;
  margin-bottom: 12px; min-width: 0;
}
.wr-card-head-row {
  display: flex; justify-content: space-between; align-items: flex-start; gap: 8px;
  margin-bottom: 10px; min-width: 0;
}
.wr-card-head-row .wr-card-head { margin-bottom: 0; flex: 1; min-width: 0; }
.wr-step {
  flex: 0 0 auto;
  width: 26px; height: 26px; border-radius: 8px;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 12px; font-weight: 700; letter-spacing: 0;
  background: var(--clr-primary-soft); color: var(--clr-primary-dark);
}
.wr-card-title { margin: 0; font-size: 15px; font-weight: 700; line-height: 1.3; color: var(--clr-fg); }
.wr-card-hint { margin: 2px 0 0; font-size: 12px; color: var(--clr-muted-fg); font-weight: 500; }
.wr-ta { resize: vertical; min-height: 72px; line-height: 1.55; width: 100%; min-width: 0; box-sizing: border-box; }
.wr-card .jkq-field .input,
.wr-card .jkq-field select.input {
  width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box;
}
.wr-num-grid {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px;
  min-width: 0;
}
.wr-num-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.wr-metric {
  display: flex; flex-direction: column; gap: 6px;
  padding: 10px; border-radius: 12px;
  background: var(--clr-bg); border: 1px solid transparent;
  font-size: 12px; color: var(--clr-muted-fg); font-weight: 600;
  min-width: 0; overflow: hidden;
}
.wr-metric:focus-within {
  border-color: hsl(225 91% 87%); background: hsl(224 100% 98%);
  box-shadow: 0 0 0 3px rgba(56, 97, 251, 0.08);
}
.wr-metric .input {
  width: 100%; min-width: 0; max-width: 100%;
  font-size: 22px; font-weight: 700; padding: 4px 0;
  border: none; background: transparent; box-shadow: none;
  color: var(--clr-fg); line-height: 1.2;
  box-sizing: border-box;
}
.wr-metric .input:focus { outline: none; box-shadow: none; }
.wr-metric-ok { background: var(--clr-success-soft); }
.wr-metric-ok:focus-within { border-color: hsl(var(--success) / .45); background: var(--clr-success-soft); box-shadow: 0 0 0 3px rgba(22, 163, 74, 0.08); }
.wr-metric-fail { background: var(--clr-destructive-soft); }
.wr-metric-fail:focus-within { border-color: hsl(var(--destructive) / .35); background: var(--clr-destructive-soft); box-shadow: 0 0 0 3px rgba(224, 51, 47, 0.08); }
.wr-ops-grid { display: grid; grid-template-columns: 1fr; gap: 12px; min-width: 0; }
.wr-ops-block {
  padding: 10px; border-radius: 12px;
  background: var(--clr-muted); border: 1px solid var(--clr-border-light);
  min-width: 0;
}
.wr-ops-label {
  font-size: 12px; font-weight: 700; color: var(--clr-muted-fg);
  margin-bottom: 8px; letter-spacing: .3px;
}
.wr-ops-remove .wr-num-grid { gap: 8px; }
.wr-cond {
  margin-top: 10px; padding: 12px; border-radius: 12px;
  background: var(--clr-warning-soft); border: 1px solid hsl(var(--warning) / .20);
  display: flex; flex-direction: column; gap: 10px;
  min-width: 0;
}
.wr-journal-list { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.wr-journal-card {
  border: 1px solid var(--clr-border-light); border-radius: 12px; padding: 12px;
  background: var(--clr-card);
  min-width: 0;
}
.wr-journal-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.wr-journal-head strong {
  font-size: 13px; color: var(--clr-primary-dark);
  background: var(--clr-primary-soft); padding: 2px 8px; border-radius: 6px; font-weight: 700;
}
.wr-journal-times { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; min-width: 0; }
.wr-journal-times .input { width: 100%; min-width: 0; box-sizing: border-box; }
.wr-chip-row { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0; }
.wr-chip {
  border: 1px solid var(--clr-border-light); background: var(--clr-card); border-radius: 999px;
  padding: 5px 10px; font-size: 12px; color: var(--clr-muted-fg); cursor: pointer;
  transition: border-color .15s, color .15s, background .15s;
}
.wr-chip:hover { border-color: hsl(var(--chart-1) / .40); color: var(--clr-primary-dark); background: var(--clr-primary-soft); }
.wr-journal-ta { min-height: 72px; width: 100%; min-width: 0; box-sizing: border-box; }
.wr-footer {
  flex: 0 0 auto; padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid var(--clr-border-light);
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(8px);
}
.wr-footer .btn {
  width: 100%; padding: 13px; font-size: 15px; font-weight: 700;
  border-radius: 12px; box-shadow: 0 6px 16px rgba(56, 97, 251, 0.22);
}
.wr-list-body { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.wr-list-row {
  display: flex; align-items: center; gap: 12px; text-align: left;
  border: 1px solid var(--clr-border-light); background: var(--clr-card); border-radius: 12px;
  padding: 12px 14px; cursor: pointer; width: 100%;
  transition: border-color .15s, box-shadow .15s;
  box-sizing: border-box; min-width: 0;
}
.wr-list-row:hover {
  border-color: hsl(225 91% 87%); box-shadow: 0 0 0 3px rgba(56, 97, 251, 0.08);
}
.wr-list-avatar {
  flex: 0 0 auto; width: 40px; height: 40px; border-radius: 12px;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--clr-primary-soft); color: var(--clr-primary-dark);
  font-weight: 700; font-size: 15px;
}
.wr-list-main { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.wr-list-main strong { font-size: 14px; }
.wr-list-row .muted { font-size: 12.5px; color: var(--clr-muted-fg); }
.wr-list-arrow { color: var(--clr-muted-fg); font-size: 18px; line-height: 1; }

/* 工作汇报 - 统计摘要 */
.wr-list-summary {
  display: flex; flex-direction: column; gap: 8px; padding: 10px 12px; margin-bottom: 8px;
  background: var(--clr-muted); border-radius: 10px;
}
.wr-summary-row { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.wr-summary-totals {
  display: flex; gap: 14px; flex-wrap: wrap; font-size: 12.5px; color: var(--clr-muted-fg);
}
.wr-summary-totals strong { color: var(--clr-fg); font-weight: 700; }
.wr-stat { font-size: 13px; font-weight: 500; }
.wr-stat-total { color: var(--clr-fg); }
.wr-stat-done { color: var(--clr-success); }
.wr-stat-miss { color: var(--clr-destructive); }
.wr-list-missing { border-color: hsl(var(--destructive) / .20); background: var(--clr-destructive-soft); }
.wr-list-missing:hover { border-color: hsl(var(--destructive) / .55); }
.wr-list-done { border-color: hsl(var(--success) / .20); }
.wr-avatar-miss { background: hsl(var(--destructive) / .20) !important; color: var(--clr-destructive) !important; }
.wr-miss-tip { font-size: 12.5px; color: var(--clr-destructive); font-weight: 500; }
.wr-meta-flash { animation: wrFlash .8s ease; }
@keyframes wrFlash {
  0%, 100% { box-shadow: none; }
  40% { box-shadow: 0 0 0 3px rgba(21, 122, 63, 0.35); border-radius: 8px; }
}
