/* 3 templates visuais selecionáveis (pedido do usuário, 17/08/2026,
   depois de ver preview aprovado com 3 direções: Sentinel/Console/Ledger).
   Sentinel é o padrão implícito (sem atributo) — os tokens dele já vivem
   em base.css, aqui só ajusta forma/tipografia dele; Console e Ledger
   sobrescrevem os tokens de cor INCONDICIONALMENTE (não dependem de
   prefers-color-scheme) — são identidade visual única de propósito
   (terminal preto / relatório claro), escolha deliberada, não esquecimento
   de dark-mode. Precisam vir DEPOIS dos blocos de tema em base.css no
   cascade pra ganhar em especificidade igual (ordem de origem).
   Ativado via `document.documentElement.dataset.template` (shell.js,
   `applyTemplate()`), persistido em localStorage por navegador — mesmo
   padrão já usado pro estado de sidebar recolhida, não é por operador. */

/* ---------- Sentinel (padrão) — só refino de forma, cor já é a de base.css ---------- */
[data-template="sentinel"] .stat,
:root:not([data-template]) .stat { position: relative; overflow: hidden; }
[data-template="sentinel"] .stat::before,
:root:not([data-template]) .stat::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: var(--tone, transparent);
}
[data-template="sentinel"] .stat-value,
:root:not([data-template]) .stat-value { font-variant-numeric: tabular-nums; }

/* ---------- Console — terminal em preto, tudo monoespaçado, âmbar ---------- */
:root[data-template="console"] {
  --bg: #000000; --surface: #0a0a0a; --surface-2: #131313; --border-soft: #1a1a1a;
  --border: #262626;
  --ink: #e6e6e6; --ink-dim: #8a8a8a; --ink-faint: #565656;
  --accent: #f5b83d; --accent-ink: #1a1200; --accent-soft: rgba(245,184,61,.1); --accent-line: rgba(245,184,61,.35);
  --sev-critical: #ff5c5c; --sev-high: #f5b83d; --sev-medium: #e0c341; --sev-low: #3fc8f0; --sev-info: #8a8a8a;
  --radius: 3px; --shadow: none;
}
[data-template="console"] body { font-family: var(--font-mono); letter-spacing: 0; }
[data-template="console"] .panel,
[data-template="console"] .stat,
[data-template="console"] input, [data-template="console"] select, [data-template="console"] button,
[data-template="console"] .sev-chip, [data-template="console"] .status-tag, [data-template="console"] .layer-tag,
[data-template="console"] .btn-ghost, [data-template="console"] .ack-btn { border-radius: 2px !important; box-shadow: none !important; }
[data-template="console"] .brand, [data-template="console"] h1, [data-template="console"] .panel-head,
[data-template="console"] thead th { font-family: var(--font-mono); text-transform: uppercase; letter-spacing: .04em; }
[data-template="console"] .stat::before { display: none; }
[data-template="console"] .sidebar, [data-template="console"] .panel { border-color: var(--border); }
[data-template="console"] .brand-mark { border-radius: 3px; box-shadow: none; border: 1px solid var(--accent-line); background: var(--surface); }
[data-template="console"] tbody tr.clickable-row:hover,
[data-template="console"] tbody tr.row:hover { background: var(--surface-2); }

/* ---------- Ledger — claro, institucional, serifa + dourado ---------- */
:root[data-template="ledger"] {
  --bg: #fbf9f4; --surface: #ffffff; --surface-2: #f4f0e6; --border-soft: #ece6d8;
  --border: #e2dbc9;
  --ink: #241f14; --ink-dim: #6b6151; --ink-faint: #a59980;
  --accent: #9c6b1f; --accent-ink: #ffffff; --accent-soft: rgba(156,107,31,.09); --accent-line: rgba(156,107,31,.35);
  --sev-critical: #a3352a; --sev-high: #b06a1a; --sev-medium: #93781f; --sev-low: #2e5f8a; --sev-info: #8a7f6a;
  --radius: 4px;
  --shadow: 0 1px 2px rgba(36,31,20,.04);
  --font-serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
}
[data-template="ledger"] h1, [data-template="ledger"] .brand, [data-template="ledger"] .stat-value,
[data-template="ledger"] .panel-title { font-family: var(--font-serif); font-weight: 600; }
[data-template="ledger"] .stat-value { font-variant-numeric: tabular-nums; }
[data-template="ledger"] .panel, [data-template="ledger"] .stat { box-shadow: var(--shadow); }
[data-template="ledger"] .stat::before { display: none; }
[data-template="ledger"] .sev-chip {
  background: none; padding-left: 0; gap: 6px;
}
[data-template="ledger"] .sev-chip .dot { width: 6px; height: 6px; }
[data-template="ledger"] tbody tr.clickable-row:hover,
[data-template="ledger"] tbody tr.row:hover { background: var(--surface-2); }
