/* Poppins servida pelo próprio painel, um passo mais leve que o peso pedido (o texto ficava pesado demais). */
@font-face{font-family:"Poppins";font-style:normal;font-weight:300;font-display:swap;src:url("/assets/fonts/poppins-300.woff2") format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/poppins-400.woff2") format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/poppins-500.woff2") format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fonts/poppins-500.woff2") format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/poppins-600.woff2") format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:800;font-display:swap;src:url("/assets/fonts/poppins-700.woff2") format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:900;font-display:swap;src:url("/assets/fonts/poppins-800.woff2") format("woff2")}
html,body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
/* RedirectPro: identidade da marca (logo Atalho, fonte Poppins) aplicada ao painel.
   Carregado por último. Só muda aparência; nenhuma regra mexe em layout funcional. */

:root {
  --rp-ink: #0b1020;
  --rp-ink-2: #121a30;
  --rp-blue: #2f75ff;
  --rp-blue-2: #1f5fe0;
  --rp-blue-light: #6f9cff;
  --rp-disp: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;
  --rp-body: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;
  --rp-mono: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;

  --brand: #2f75ff;
  --brand-bright: #2f75ff;
  --brand-hover: #1f5fe0;
  --brand-soft: #e9f0ff;
  --bg: #f6f8fc;
  --surface-2: #f9fbfe;
  --surface-3: #eff3f9;
  --text: #0f172a;
  --text-2: #334155;
  --muted: #5b6478;
  --line: #e3e8f2;
  --line-strong: #d3dae8;
  --primary: #2f75ff;
  --primary-text: #ffffff;
  --tooltip: #0b1020;
  --shadow-sm: 0 1px 2px rgba(15, 23, 42, .04), 0 10px 30px -18px rgba(15, 23, 42, .18);
  --shadow-md: 0 18px 40px -22px rgba(15, 23, 42, .28);
  --shadow-lg: 0 30px 60px -30px rgba(15, 23, 42, .38);
  --radius-lg: 20px;
  font-family: var(--rp-body);
}

html[data-theme="dark"] {
  --brand: #5b8fff;
  --brand-bright: #5b8fff;
  --brand-hover: #7aa5ff;
  --brand-soft: #172447;
  --bg: #0b1020;
  --surface: #11182b;
  --surface-2: #141c32;
  --surface-3: #1a2340;
  --text: #f3f6fc;
  --text-2: #d3dbea;
  --muted: #98a3bb;
  --line: #1f2945;
  --line-strong: #2a365a;
  --primary: #2f75ff;
  --primary-text: #ffffff;
  --tooltip: #f3f6fc;
}

/* Base tipográfica */
html body {
  font-family: var(--rp-body) !important;
  background:
    radial-gradient(900px 420px at 85% -12%, color-mix(in srgb, var(--rp-blue) 9%, transparent), transparent 70%),
    var(--bg) !important;
  color: var(--text);
  word-spacing: normal;
}
html body h1,
html body h2,
html body .page-head h1,
html body .gf-page-head h1,
html body .gf-dashboard-head h1,
html body .auth-card h1 {
  font-family: var(--rp-disp) !important;
  font-weight: 800 !important;
  letter-spacing: -.035em !important;
  word-spacing: normal;
}
html body h2 { letter-spacing: -.02em !important; }
html body .eyebrow {
  font-family: var(--rp-disp) !important;
  font-weight: 700 !important;
  font-size: 12.5px !important;
  letter-spacing: .14em !important;
  color: var(--rp-blue) !important;
  opacity: 1 !important;
}
html[data-theme="dark"] body .eyebrow { color: #8fb4ff !important; }

/* Números de destaque em fonte display */
html body .gf-metric strong,
html body .metric strong,
html body .stat strong,
html body .gf-stat strong {
  font-family: var(--rp-disp) !important;
  font-weight: 800 !important;
  letter-spacing: -.03em !important;
}

/* Barra lateral escura, como o topo da página de vendas */
html body .topbar,
html body .topbar.gf-nav {
  background:
    radial-gradient(320px 260px at 20% -8%, rgba(47, 117, 255, .32), transparent 70%),
    var(--rp-ink) !important;
  border-right: 1px solid rgba(255, 255, 255, .06) !important;
  color: #e6ebf5;
}
html body .topbar .brand:hover { background: rgba(255, 255, 255, .05) !important; }
html body .topbar .brand-mark-wrap {
  background: rgba(255, 255, 255, .06) !important;
  border-color: rgba(255, 255, 255, .1) !important;
  box-shadow: none !important;
}
html body .topbar .brand-wordmark {
  font-family: var(--rp-disp) !important;
  font-weight: 700 !important;
  letter-spacing: -.03em !important;
  color: #fff !important;
}
html body .topbar .brand-wordmark strong { color: var(--rp-blue-light) !important; font-weight: 700 !important; }
html body .topbar .nav-link {
  color: #aab4ca !important;
  border-color: transparent !important;
  background: transparent !important;
}
html body .topbar .nav-link .ui-icon,
html body .topbar .nav-link .gf-icon { color: currentColor !important; }
html body .topbar .nav-link:hover {
  color: #fff !important;
  background: rgba(255, 255, 255, .06) !important;
}
html body .topbar .nav-link.active {
  color: #fff !important;
  background: rgba(47, 117, 255, .2) !important;
  border-color: rgba(111, 156, 255, .28) !important;
  box-shadow: inset 3px 0 0 var(--rp-blue) !important;
}
html body .topbar .nav-link.active .ui-icon,
html body .topbar .nav-link.active .gf-icon { color: var(--rp-blue-light) !important; }
html body .topbar .nav-link.active::before { background-color: var(--rp-blue-light) !important; }
html body .topbar.gf-nav nav > a[href^="/configuracoes"]::before { background: rgba(255, 255, 255, .08) !important; }

/* Cartões */
html body .card {
  border-radius: var(--radius-lg) !important;
  border-color: var(--line) !important;
  box-shadow: var(--shadow-sm) !important;
}

/* Botões no estilo da página de vendas */
html body .btn { border-radius: 12px !important; font-weight: 700 !important; }
html body .btn.primary,
html body .primary.btn {
  background: var(--rp-blue) !important;
  border-color: var(--rp-blue) !important;
  color: #fff !important;
  box-shadow: 0 12px 26px -12px rgba(47, 117, 255, .75) !important;
}
html body .btn.primary:hover,
html body .primary.btn:hover {
  background: var(--rp-blue-2) !important;
  border-color: var(--rp-blue-2) !important;
}
html body .btn.secondary:hover { border-color: color-mix(in srgb, var(--rp-blue) 40%, var(--line)) !important; }

/* Campos */
html body .field input,
html body .field textarea,
html body .field select { border-radius: 12px !important; }
html body .field input:focus,
html body .field textarea:focus,
html body .field select:focus {
  border-color: var(--rp-blue) !important;
  box-shadow: 0 0 0 4px rgba(47, 117, 255, .14) !important;
}

/* Abas do redirecionador e seletor de período */
html body .gf-project-tabs { border-radius: 14px !important; }
html body .gf-project-tabs a.active {
  background: var(--rp-blue) !important;
  box-shadow: 0 10px 22px -12px rgba(47, 117, 255, .8) !important;
}
html body .gf-period-menu summary { border-radius: 12px !important; }

/* Selos */
html body .gf-plan-badge {
  font-family: var(--rp-mono) !important;
  font-size: 10.5px !important;
  letter-spacing: .06em !important;
  text-transform: uppercase;
  background: var(--brand-soft) !important;
  color: var(--rp-blue) !important;
}
html[data-theme="dark"] body .gf-plan-badge { color: var(--rp-blue-light) !important; }

/* Login, cadastro e senha: fundo escuro do topo da página de vendas */
html body .auth-wrap {
  background:
    radial-gradient(700px 380px at 50% -8%, rgba(47, 117, 255, .42), transparent 70%),
    var(--rp-ink) !important;
}
html body .auth-card {
  border-radius: 24px !important;
  border-color: rgba(255, 255, 255, .08) !important;
  box-shadow: 0 40px 80px -40px rgba(0, 0, 0, .7) !important;
}
html body .auth-brand strong {
  font-family: var(--rp-disp) !important;
  font-weight: 800 !important;
  letter-spacing: -.035em !important;
}
html body .auth-brand strong span { color: var(--rp-blue) !important; }
html body .auth-signup a,
html body .auth-links a:hover { color: var(--rp-blue) !important; }

/* Celular: barra lateral (gaveta) também escura */
@media (max-width: 780px) {
  html body .topbar.gf-nav {
    background:
      radial-gradient(320px 260px at 20% -8%, rgba(47, 117, 255, .32), transparent 70%),
      var(--rp-ink) !important;
    border-right-color: rgba(255, 255, 255, .06) !important;
  }
  html body .gf-mobile-menu-toggle {
    background: var(--rp-ink) !important;
    border-color: var(--rp-ink) !important;
    color: #fff !important;
  }
}

/* O script do menu reforça o item Configurações; aqui ele segue a barra escura. */
html body .topbar.gf-nav nav > a.nav-link[href^="/configuracoes"].active {
  color: #fff !important;
  background: rgba(47, 117, 255, .2) !important;
  border-color: rgba(111, 156, 255, .28) !important;
  box-shadow: inset 3px 0 0 var(--rp-blue) !important;
}
html body .topbar.gf-nav nav > a.nav-link[href^="/configuracoes"].active .gf-icon { color: var(--rp-blue-light) !important; }

/* Gráfico em onda: linha suave, pontos aparecem só ao passar o mouse. */
html body .gf-line-path { stroke-width: 3 !important; }
html body .gf-line-area { fill: color-mix(in srgb, var(--rp-blue) 12%, transparent) !important; }
html body .gf-line-plot > .gf-line-point { opacity: 0 !important; transition: opacity .15s ease !important; }
html body .gf-line-plot > .gf-line-point:hover,
html body .gf-line-plot > .gf-line-point:focus { opacity: 1 !important; }

/* Instalar app */
html body .topbar .rp-install-link{appearance:none;background:none;border:0;width:100%;font:inherit;font-weight:700;color:inherit;text-align:left;cursor:pointer}
html body .topbar .rp-install-link[hidden]{display:none!important}
#rp-pwa-help{position:fixed;inset:0;z-index:9999;background:rgba(5,8,18,.55);display:flex;align-items:flex-end;justify-content:center;padding:16px}
#rp-pwa-help .rp-pwa-box{background:var(--surface,#fff);color:var(--text);border-radius:20px;padding:22px;max-width:420px;width:100%;box-shadow:0 30px 60px -20px rgba(0,0,0,.5);display:grid;gap:12px}
#rp-pwa-help strong{font-family:var(--rp-disp);font-size:18px}
#rp-pwa-help ol{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--text-2);font-size:14.5px;line-height:1.45}
#rp-pwa-help p{margin:0;color:var(--text-2)}
#rp-pwa-help .btn{justify-self:stretch}

/* Tutorial */
.rp-tour{position:fixed;inset:0;z-index:9998;background:rgba(5,8,18,.6);display:flex;align-items:center;justify-content:center;padding:16px;animation:rpTourIn .18s ease}
.rp-tour-card{position:relative;background:var(--surface,#fff);color:var(--text);border-radius:22px;padding:28px 26px 22px;max-width:460px;width:100%;box-shadow:0 40px 80px -24px rgba(0,0,0,.55);display:grid;gap:12px}
.rp-tour-ic{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;color:#fff;background:radial-gradient(60px 50px at 30% 20%,#6f9cff,#2f75ff 60%,#1f5fe0);box-shadow:0 12px 26px -12px rgba(47,117,255,.8)}
.rp-tour-card h2{margin:6px 0 0;font-family:var(--rp-disp);font-size:22px;letter-spacing:-.02em}
.rp-tour-card p{margin:0;color:var(--text-2);font-size:15px;line-height:1.55}
.rp-tour-go{justify-self:start;font-weight:700;font-size:14px;color:var(--brand-bright);text-decoration:none}
.rp-tour-go:hover{text-decoration:underline}
.rp-tour-x{position:absolute;top:12px;right:12px;width:34px;height:34px;border-radius:10px;border:0;background:var(--surface-3);color:var(--muted);font-size:22px;line-height:1;cursor:pointer}
.rp-tour-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}
.rp-tour-dots{display:flex;gap:6px}.rp-tour-dots i{width:7px;height:7px;border-radius:99px;background:var(--line-strong);transition:width .2s ease}
.rp-tour-dots i.on{width:20px;background:var(--brand-bright)}
.rp-tour-btns{display:flex;gap:8px}
@keyframes rpTourIn{from{opacity:0}to{opacity:1}}
@media(max-width:560px){.rp-tour{align-items:flex-end;padding:10px}.rp-tour-card{border-radius:22px;padding:24px 20px 18px}}
.rp-news .rp-news-list{max-height:min(52vh,420px);overflow:auto;display:grid;gap:14px;margin-right:-6px;padding-right:6px}
.rp-news ul{margin:6px 0 0;padding:0;list-style:none;display:grid;gap:9px}
.rp-news li{font-size:14.5px;line-height:1.45;color:var(--text-2)}
.rp-news-date{font-family:var(--rp-mono);font-size:11px;letter-spacing:.12em;color:var(--muted);text-transform:uppercase}
.rp-news-rel.old{padding-top:12px;border-top:1px solid var(--line)}
.rp-news-rel.old strong{font-size:14px}
html body .topbar .rp-install-link{position:relative}
.rp-news-dot{position:absolute;top:50%;right:14px;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:#ff4d6d;box-shadow:0 0 0 3px rgba(255,77,109,.2)}

/* Botão "Seja afiliado" em destaque no menu */
html body .topbar .nav-link.nav-cta{background:linear-gradient(135deg,rgba(255,196,0,.18),rgba(255,140,0,.12))!important;border:1px solid rgba(255,196,0,.45)!important;color:#ffe08a!important}
html body .topbar .nav-link.nav-cta .gf-icon{color:#ffc400!important}
html body .topbar .nav-link.nav-cta em{font-style:normal;margin-left:6px;font-size:11px;font-weight:800;padding:2px 7px;border-radius:999px;background:#ffc400;color:#2a1a00}
html body .topbar .nav-link.nav-cta:hover,html body .topbar .nav-link.nav-cta.active{background:linear-gradient(135deg,rgba(255,196,0,.3),rgba(255,140,0,.2))!important;color:#fff!important}

html body .topbar .nav-link.nav-hire{background:linear-gradient(135deg,rgba(46,229,122,.16),rgba(20,160,90,.1))!important;border:1px solid rgba(46,229,122,.42)!important;color:#b8f5d2!important}
html body .topbar .nav-link.nav-hire .gf-icon{color:#2ee57a!important}

/* Logo Atalho: ícone em bloco e assinatura "redirect pro" com selo azul */
html body .brand-mark-wrap,
html body .topbar .brand-mark-wrap {
  width: 38px !important;
  height: 38px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 10px !important;
}
html body .brand img,
html body .brand-mark-wrap img { width: 38px !important; height: 38px !important; border-radius: 10px; }
html body .brand-wordmark,
html body .topbar .brand-wordmark {
  font-family: var(--rp-disp) !important;
  font-weight: 700 !important;
  letter-spacing: -.03em !important;
  text-transform: lowercase;
  align-items: center !important;
  gap: 6px !important;
}
html body .brand-wordmark strong,
html body .topbar .brand-wordmark strong {
  background: #2f75ff;
  color: #fff !important;
  border-radius: 6px;
  padding: 0 6px 2px;
  font-size: .86em;
  line-height: 1.3;
  font-weight: 700 !important;
}
html body .auth-brand strong,
html body .gf-public-brand strong,
html body .gf-checkout-brand strong {
  font-family: var(--rp-disp) !important;
  font-weight: 700 !important;
  letter-spacing: -.03em !important;
  text-transform: lowercase;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
html body .auth-brand strong span,
html body .gf-public-brand strong span,
html body .gf-checkout-brand strong span {
  background: #2f75ff;
  color: #fff !important;
  border-radius: 7px;
  padding: 0 7px 3px;
  font-size: .86em;
  line-height: 1.25;
}
html body .auth-brand img,
html body .gf-public-brand img,
html body .gf-checkout-brand img { border-radius: 12px; }

