/* ============================================================
   O BIZU — SliceWP (programa de afiliados)
   Reskin em cima da marcação/classes próprias do plugin
   (slicewp-*), sem overrides de template — sobrevive a
   atualizações do plugin.
   ============================================================ */

/* ---------- Cadastro / Login / Esqueci a senha ---------- */
.slicewp-form {
  background-color: var(--obizu-surface);
  border: 1px solid var(--obizu-border);
  border-radius: var(--obizu-radius-lg);
  padding: 1.75rem;
  margin: 0 auto 3rem;
  max-width: 460px;
}
#slicewp-affiliate-register-form { max-width: 560px; }
.eyebrow { display: block; }

.slicewp-field-wrapper { margin-bottom: 1.1rem; }
.slicewp-field-label-wrapper label { display: block; font-weight: 500; margin-bottom: 0.4rem; color: var(--obizu-body-color); }
.slicewp-field-required-marker { color: var(--obizu-danger); }
.slicewp-field-inner textarea {
  width: 100%;
  background-color: var(--obizu-surface-2);
  border: 1px solid var(--obizu-border);
  border-radius: var(--obizu-radius);
  color: var(--obizu-body-color);
  padding: 0.65rem 0.9rem;
  font-family: inherit;
}
.slicewp-field-input-password { position: relative; }
.slicewp-show-hide-password {
  position: absolute;
  right: 0.75rem;
  top: 50%;
  transform: translateY(-50%);
  color: var(--obizu-tertiary-color);
  display: flex;
}
.slicewp-show-hide-password:hover { color: var(--obizu-gold); }
.slicewp-show-hide-password svg { width: 20px; height: 20px; }

.slicewp-field-wrapper-terms-and-conditions .slicewp-field-label-wrapper { display: inline; }
.slicewp-field-wrapper-terms-and-conditions { display: flex; align-items: flex-start; gap: 0.5rem; }
.slicewp-field-wrapper-terms-and-conditions input[type="checkbox"] { margin-top: 0.3rem; width: auto; }

/* Botões — antes do tamanho da fonte, sem nenhum peso próprio. */
.slicewp-button-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--obizu-gold);
  color: #000;
  border: none;
  border-radius: var(--obizu-radius);
  padding: 0.75rem 2rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-size: 0.95rem;
  cursor: pointer;
  transition: background-color 0.15s ease, transform 0.15s ease;
}
.slicewp-button-primary:hover { background-color: var(--obizu-gold-light); transform: translateY(-2px); }

.slicewp-lost-password { margin-top: 1rem; }
.slicewp-lost-password a { font-size: 0.9rem; }

/* Avisos (cadastro feito, erro de login etc.) */
.slicewp-notice {
  border-radius: var(--obizu-radius);
  padding: 1rem 1.25rem;
  margin-bottom: 1.5rem;
  border-left: 4px solid var(--obizu-gold);
  background-color: var(--obizu-surface-2);
  color: var(--obizu-body-color);
}
.slicewp-notice-warning { border-left-color: var(--obizu-warning); }
.slicewp-notice-updated { border-left-color: var(--obizu-success); }

/* ---------- Painel do afiliado ---------- */
#slicewp-affiliate-account-nav-tab { margin-bottom: 2rem; border-bottom: 1px solid var(--obizu-border); }
ul.slicewp-nav-tab-wrapper { list-style: none; display: flex; flex-wrap: wrap; gap: 0.25rem; margin: 0; padding: 0; }
li.slicewp-nav-tab a {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.75rem 1.1rem;
  color: var(--obizu-secondary-color);
  font-weight: 500;
}
li.slicewp-nav-tab a:hover { color: var(--obizu-gold-light); }
li.slicewp-nav-tab a svg { width: 18px; height: 18px; }
li.slicewp-nav-tab.slicewp-active a { color: var(--obizu-gold); border-bottom: 2px solid var(--obizu-gold); }

.slicewp-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1.25rem; margin-bottom: 2rem; }
.slicewp-card {
  background-color: var(--obizu-surface);
  border: 1px solid var(--obizu-border);
  border-radius: var(--obizu-radius-lg);
  overflow: hidden;
}
.slicewp-card-inner { padding: 1.25rem 1.5rem; }
.slicewp-card .slicewp-card-title { color: var(--obizu-tertiary-color); font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.03em; margin-bottom: 0.5rem; }
.slicewp-card .slicewp-kpi-value { display: flex; align-items: baseline; gap: 0.6rem; }
.slicewp-card .slicewp-kpi-value > span:first-child { font-family: var(--obizu-font-heading); font-size: 1.8rem; font-weight: 700; color: var(--obizu-gold); }
.slicewp-kpi-direction { font-size: 0.8rem; display: flex; align-items: center; gap: 0.2rem; color: var(--obizu-tertiary-color); }
.slicewp-kpi-direction.slicewp-positive { color: #75b798; }
.slicewp-kpi-direction.slicewp-negative { color: #ea868f; }
.slicewp-kpi-direction svg { width: 14px; height: 14px; }
.slicewp-kpi-direction .slicewp-arrow-down, .slicewp-kpi-direction.slicewp-positive .slicewp-arrow-up { display: none; }
.slicewp-kpi-direction.slicewp-positive .slicewp-arrow-down { display: none; }
.slicewp-kpi-direction.slicewp-positive .slicewp-arrow-up { display: inline-flex; }
.slicewp-card-footer { padding: 0.85rem 1.5rem; border-top: 1px solid var(--obizu-border); background-color: var(--obizu-surface-2); }
.slicewp-card-footer a { font-size: 0.85rem; font-weight: 600; }

table.slicewp-table {
  width: 100%;
  border-collapse: collapse;
  background-color: var(--obizu-surface);
  border: 1px solid var(--obizu-border);
  border-radius: var(--obizu-radius-lg);
  overflow: hidden;
  margin-bottom: 1.5rem;
}
table.slicewp-table th {
  background-color: var(--obizu-surface-2);
  text-align: left;
  padding: 0.85rem 1rem;
  color: #fff;
}
table.slicewp-table td { padding: 0.85rem 1rem; border-top: 1px solid var(--obizu-border); }

.slicewp-affiliate-dashboard-filters { margin-bottom: 1.5rem; }
.slicewp-affiliate-dashboard-filters form { display: flex; gap: 0.75rem; flex-wrap: wrap; align-items: center; }

/* Link/código de indicação (aba "Links de afiliado") */
.slicewp-affiliate-link-wrapper input,
.slicewp-copy-to-clipboard-wrapper input {
  background-color: var(--obizu-surface-2);
  border: 1px solid var(--obizu-border);
  border-radius: var(--obizu-radius);
  color: var(--obizu-body-color);
  padding: 0.6rem 0.9rem;
}
