/* Operator console — neutral, calm, data-dense. Status accents reserved for
   sync state (green/amber/red) per Design Brief §6. Tokenized for M6 theming. */
:root {
  --bg: #f7f6f3; --surface: #ffffff; --text: #2b2a28; --muted: #6b6862;
  --border: #e4ddd1; --primary: #2b2a28; --primary-text: #fff;
  --ok: #2f7d4f; --warn: #b07d12; --err: #b3402f;
  --radius: 8px; --space: 14px; --font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
* { box-sizing: border-box; }
body { margin: 0; font-family: var(--font); color: var(--text); background: var(--bg); }
header { background: var(--surface); border-bottom: 1px solid var(--border); padding: var(--space) 24px; font-weight: 700; }
main { max-width: 960px; margin: 0 auto; padding: 24px; }
.toolbar { display: flex; gap: var(--space); align-items: center; margin-bottom: var(--space); flex-wrap: wrap; }
select, button { padding: 9px 12px; border: 1px solid var(--border); border-radius: var(--radius); font-size: 0.95rem; background: var(--surface); }
button.primary { background: var(--primary); color: var(--primary-text); border: 0; cursor: pointer; }
button.danger { background: var(--err); color: #fff; border: 0; cursor: pointer; }
table { width: 100%; border-collapse: collapse; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; }
th, td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--border); font-size: 0.9rem; }
th { background: var(--bg); font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.03em; color: var(--muted); }
.muted { color: var(--muted); font-size: 0.85rem; }
.empty { padding: 32px; text-align: center; color: var(--muted); }
#msg { margin: var(--space) 0; }
.ok { color: var(--ok); } .err { color: var(--err); }
