/* ============================================================
 * APEX SALES OS · NSD ADMIN
 * Owner: Worker W20
 * Routes: /nsd/war-room, /nsd/modules, /nsd/regions, /nsd/rollup
 * Page-local classes only. All tokens come from shared design system.
 * ============================================================ */

/* Region cards — 5x4 grid on /nsd/regions */
.page-nsd-region-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  cursor: pointer;
  transition: border-color var(--t), box-shadow var(--t);
}
.page-nsd-region-card:hover {
  border-color: var(--border-strong);
  box-shadow: var(--shadow-sm);
}
.page-nsd-region-card .name {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -0.012em;
  color: var(--text);
}
.page-nsd-region-card .rev {
  font-family: 'Inter Tight', sans-serif;
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -0.015em;
  font-variant-numeric: tabular-nums;
  background: var(--grad);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.page-nsd-region-card .meta {
  font-size: 11.5px;
  color: var(--text-muted);
}

/* Module editor — two-column shell on /nsd/modules */
.page-nsd-module-grid {
  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 16px;
  height: calc(100vh - 56px - 32px - 60px);
}
.page-nsd-module-list {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  overflow-y: auto;
}
.page-nsd-module-list-row {
  display: grid;
  grid-template-columns: 36px 1fr auto;
  gap: 10px;
  align-items: center;
  padding: 10px 14px;
  border-bottom: 1px solid var(--border);
  cursor: pointer;
  font-size: 12.5px;
  transition: background-color var(--t);
}
.page-nsd-module-list-row:hover {
  background: var(--hover);
}
.page-nsd-module-list-row.active {
  background: var(--primary-soft);
}
.page-nsd-module-list-row .num {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  background: var(--bg-tint);
  border: 1px solid var(--border);
  border-radius: 4px;
  padding: 1px 5px;
  text-align: center;
  font-variant-numeric: tabular-nums;
}
.page-nsd-module-editor {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 24px 28px;
  overflow-y: auto;
}
.page-nsd-module-editor h2 {
  margin: 0 0 6px;
  font-size: 18px;
  font-weight: 600;
  letter-spacing: -0.015em;
  color: var(--text);
}
.page-nsd-module-editor .meta {
  font-size: 12px;
  color: var(--text-muted);
  margin-bottom: 18px;
}

/* Daily rollup — 4-up KPI strip on /nsd/rollup */
.page-nsd-rollup-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
