/* v0.1.1: narrow, vertical quick-entry buttons. */
.review-section { margin-bottom: 26px; max-width: 520px; }
.review-card { padding: 12px; margin-bottom: 10px; border: 1px solid var(--line); border-radius: 10px; background: var(--paper); }
.review-card[data-state=active] { border-color: #7c9d83; box-shadow: inset 3px 0 #7c9d83; }
.review-head { display: flex; gap: 8px; align-items: flex-start; justify-content: space-between; }
.review-head strong { min-width: 0; font-size: 13px; overflow-wrap: anywhere; }
.review-state { flex-shrink: 0; font-size: 11px; background: #eef1e7; color: var(--green); border-radius: 4px; padding: 3px 6px; }
.review-file { margin: 7px 0; font-size: 12px; overflow-wrap: anywhere; white-space: pre-wrap; }
.review-meta { font-size: 10px; color: var(--muted); margin: 7px 0; }
.review-actions, .review-tools { display: flex; gap: 8px; align-items: center; }
.review-actions .primary, .review-actions .secondary, .review-tools .secondary { font-size: 12px; padding: 9px 12px; }
.review-actions:empty { display: none; }
.review-tools { margin: 12px 0; flex-wrap: wrap; }
.review-section summary { cursor: pointer; color: var(--green); font-size: 12px; padding: 9px 0; }
#reviewForm { display: grid; gap: 10px; padding: 10px 0; }
#reviewForm label, .review-result-label { display: grid; gap: 5px; font-size: 11px; color: var(--muted); }
#reviewForm input, #reviewForm select, .review-result-label textarea { width: 100%; min-width: 0; padding: 8px; border: 1px solid var(--line); border-radius: 5px; background: var(--paper); color: var(--ink); }
.review-result-label { margin: 10px 0; }
.review-result-label textarea { resize: vertical; font-size: 12px; }
.review-empty { padding: 10px 0; }
.backup-tools { margin: 0 0 16px; font-size: 11px; color: var(--muted); }
.backup-tools summary { cursor: pointer; padding: 5px 0; }
.backup-tools label { display: grid; gap: 5px; margin: 10px 0; }
.backup-tools input { max-width: 100%; min-width: 0; }
.categories {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 340px;
  gap: 8px;
}
.category {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 52px;
  padding: 9px 16px;
  border-radius: 10px;
  text-align: left;
}
.category:hover { transform: translateX(2px); }
.category:active { transform: translateX(0); }
.category .symbol { margin: 0; }
.category strong { font-size: 14px; }
.category .count { margin: 0; white-space: nowrap; }
.category .count b { font-size: 20px; }
.category.feedback-pair {
  grid-column: auto;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  gap: 4px;
  padding: 9px 6px;
}
.category.feedback-pair .symbol { width: 22px; height: 22px; font-size: 13px; }
.category.feedback-pair strong { font-size: 12px; }
.category.feedback-pair .count { font-size: 9px; }
.category.feedback-pair .count b { font-size: 16px; margin-right: 2px; }
@media (max-width: 760px) {
  .app { max-width: 420px; padding: 18px 14px 16px; }
  header { gap: 6px; margin-bottom: 12px; }
  .eyebrow { font-size: 8px; letter-spacing: 1.3px; }
  .eyebrow span { margin-left: 7px; }
  h1 { font-size: 24px; margin: 8px 0; }
  header p { font-size: 12px; }
  .archive-link { font-size: 11px; padding: 3px 0; }
  .toolbar { gap: 8px 12px; }
  .mode-switch { padding: 3px; }
  .mode-switch button { padding: 7px 12px; font-size: 12px; }
  .date-control { gap: 5px; }
  input[type=date] { padding: 6px; max-width: 132px; }
  #saveState { font-size: 10px; }
  .notice { font-size: 11px; margin: 10px 0 16px; padding: 9px 11px; }
  h2 { margin: 5px 0 12px; font-size: 17px; }
  .muted { font-size: 10px; }
  .categories { max-width: none; }
  .records-heading { margin-top: 22px; }
  .hint { font-size: 11px; }
  .record-top { flex-wrap: wrap; }
  .report-panel { padding: 18px 14px; }
  footer { flex-wrap: wrap; }
}
@media (max-width: 420px) {
  header p { display: none; }
}
/* Shared-record connection controls retain the existing narrow layout. */
#workControls{border:0;padding:0;margin:0;min-width:0}
.sync-panel{padding:16px;margin:12px 0;border:1px solid #d2d8c9;border-radius:12px;background:#f5f7f1}
.sync-panel[hidden]{display:none}
.sync-panel form{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.sync-panel input{min-width:0;max-width:100%;padding:10px;border:1px solid #bbc3b2;border-radius:8px}
.sync-panel button{margin:4px 4px 4px 0}
#conflictList{white-space:pre-wrap;overflow-wrap:anywhere;max-height:280px;overflow:auto;font-size:12px}
.quick-section{max-width:520px;margin-bottom:26px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
.quick-section label{display:block;margin:0 0 8px}
#quickInput{display:block;width:100%;min-height:92px;resize:vertical;padding:10px;border:1px solid #cbd5c6;border-radius:8px;background:#fafbf6;color:var(--ink);font-size:16px;line-height:1.6}
.quick-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0}
.quick-actions .primary{flex:none;padding:10px 14px;white-space:nowrap}
.quick-section summary{cursor:pointer;color:var(--green);font-size:12px;padding:10px 0}
#quickNotes{display:grid;gap:10px;max-height:460px;overflow:auto}
.quick-note .remove{margin-left:auto}.quick-note textarea{font-size:16px}
.voice-controls{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
#voiceButton{width:100%;min-height:54px;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;font-size:16px;font-weight:600}
#voiceButton.recording{background:#456653;color:white}#voiceButton.cancelling{background:#935d47;color:white}
#voiceMessage{margin:9px 0 0}.voice-state{margin:8px 0!important;line-height:1.6}
.quick-note audio{width:100%;height:42px;margin:6px 0}.quick-note>.secondary{padding:7px 10px;font-size:12px}
#voiceRescue a{display:block;color:#935d47;padding:8px 0}
