/* Página de Ajustes — só usa a paleta neutra (spec-design-system.md seção 1+2),
   igual Home/Calculadora. Cards empilhados verticalmente, sem grid-2. */

.content .card { margin-bottom: var(--space-4); }
.ajustes-hint { font-size: 12px; color: var(--text-2); margin: -4px 0 var(--space-3); }

/* ---------- conexões ---------- */
.conn-row {
  display: flex; align-items: center; justify-content: space-between;
  gap: var(--space-3); padding: 10px 4px; border-bottom: 1px solid var(--grid);
}
.conn-row:last-child { border-bottom: none; }
.conn-name { display: flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 600; }
.conn-name .dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
.conn-name .dot.live { background: var(--good); }
.conn-name .dot.mock { background: var(--critical); }
.conn-name .dot.none { background: var(--muted); }
.conn-meta { font-size: 12px; color: var(--text-2); text-align: right; display: flex; align-items: center; gap: 10px; }
.conn-status { font-size: 12px; font-weight: 600; }
.conn-status.live { color: var(--good); }
.conn-status.mock { color: var(--critical); }
.conn-status.none { color: var(--muted); }
.conn-refresh {
  border: 1px solid var(--border); background: var(--surface); color: var(--text-2);
  width: 26px; height: 26px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
  cursor: pointer; flex-shrink: 0;
}
.conn-refresh svg { width: 13px; height: 13px; }
.conn-refresh:hover { color: var(--text-1); border-color: var(--text-2); }
.conn-refresh.loading svg { animation: conn-spin .7s linear infinite; }
@keyframes conn-spin { to { transform: rotate(360deg); } }

/* ---------- badge "em desenvolvimento" ---------- */
.wip-badge {
  font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em;
  color: var(--warning); border: 1px solid var(--warning); border-radius: var(--radius-pill);
  padding: 2px 8px; margin-left: 8px; vertical-align: middle;
}

/* ---------- metas ---------- */
#metas-list input {
  width: 90px; text-align: right; font: inherit; font-variant-numeric: tabular-nums;
  border: 1px solid var(--border); border-radius: 6px; padding: 5px 7px;
  background: var(--page); color: var(--text-1);
}
.save-btn {
  margin-top: var(--space-3); border: none; background: var(--c1); color: #fff;
  font-weight: 600; font-size: 13px; padding: 9px 16px; border-radius: var(--radius-sm); cursor: pointer;
}
.save-feedback { margin-left: var(--space-3); font-size: 12px; color: var(--good); }

/* ---------- tema ---------- */
.theme-options { display: flex; gap: var(--space-2); }
.theme-options button {
  border: 1px solid var(--border); background: var(--page); color: var(--text-2);
  font: inherit; font-size: 13px; font-weight: 500; padding: 8px 16px;
  border-radius: var(--radius-sm); cursor: pointer;
}
.theme-options button.active { background: var(--c1); color: #fff; border-color: var(--c1); }
