/* =========================================================================
   NORYX PARCEIROS — frontend
   Linguagem visual: tokens do child theme (noryx.css) + design aprovado
   "Área do Parceiro — Opção A" (design-reference/noryx-affiliate-optionA.html).
   Gold é restrito a destaques pontuais (tier/pendente); accent = azul.
   ========================================================================= */

/* Container: alinha ao mesmo eixo do header/footer do site (--noryx-maxw).
   O tema entrega .content-area em largura parcial; o wrapper centraliza. */
.noryx-af-area,
.noryx-af-land,
.noryx-af-login,
.noryx-af-ranking {
	max-width: var(--noryx-maxw, 1200px);
	margin-left: auto;
	margin-right: auto;
	padding-left: 24px;
	padding-right: 24px;
	box-sizing: border-box;
	width: 100%;
}
@media (max-width: 640px) {
	.noryx-af-area, .noryx-af-land, .noryx-af-login, .noryx-af-ranking { padding-left: 16px; padding-right: 16px; }
}

.noryx-af-area,
.noryx-af-land,
.noryx-af-login,
.noryx-af-ranking {
	--naf-navy: #14233A;
	--naf-blue: #1B4D86;
	--naf-blue-2: #2E6DB4;
	--naf-ink: #14181F;
	--naf-ink-2: #47505C;
	--naf-muted: #737B85;
	--naf-paper: #FFFFFF;
	--naf-paper-2: #F6F6F3;
	--naf-line: #E7E7E2;
	--naf-line-2: #D8D8D2;
	--naf-gold: #C9A15A;
	--naf-green: #157F4C;
	--naf-red: #B42318;
	--naf-r: 10px;
	--naf-r-sm: 6px;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	color: var(--naf-ink);
	font-size: 15px;
	line-height: 1.55;
	font-feature-settings: "tnum" 1;
	-webkit-font-smoothing: antialiased;
}

/* ------------------------------------------------------------------
   Cabeçalho da área (fora do card) — .ahead do design aprovado
   ------------------------------------------------------------------ */
.noryx-af-ahead {
	display: flex; align-items: center; justify-content: space-between;
	gap: 16px; flex-wrap: wrap; margin-bottom: 22px;
}
.noryx-af-ahead h2 { font-size: 26px; font-weight: 700; letter-spacing: -.025em; margin: 0; color: var(--naf-ink); }
.noryx-af-ahead p { font-size: 14px; color: var(--naf-muted); margin: 3px 0 0; }
.noryx-af-tier {
	font-size: 12.5px; font-weight: 600; color: #7a5f22;
	background: rgba(201,161,90,.16); border: 1px solid rgba(201,161,90,.35);
	padding: 8px 14px; border-radius: 999px; display: inline-flex; align-items: center; gap: 7px;
	white-space: nowrap;
}

/* ------------------------------------------------------------------
   Container do dashboard + tabs (dentro do card, fundo paper-2)
   ------------------------------------------------------------------ */
.noryx-af-dash { background: #fff; border: 1px solid var(--naf-line); border-radius: 14px; overflow: hidden; }
.noryx-af-tabs {
	display: flex; border-bottom: 1px solid var(--naf-line);
	overflow-x: auto; background: var(--naf-paper-2); scrollbar-width: thin;
	margin: 0;
}
.noryx-af-tab {
	padding: 15px 18px; font-size: 14px; font-weight: 500; color: var(--naf-ink-2);
	text-decoration: none; white-space: nowrap;
	border-bottom: 2px solid transparent; margin-bottom: -1px;
}
.noryx-af-tab:hover { color: var(--naf-ink); }
.noryx-af-tab.is-active { color: var(--naf-navy); font-weight: 600; border-bottom-color: var(--naf-navy); background: #fff; }

.noryx-af-panel { padding: 28px; }
@media (max-width: 560px) { .noryx-af-panel { padding: 18px 16px; } }

.noryx-af-section { font-size: 16px; font-weight: 600; letter-spacing: -.01em; margin: 0 0 16px; color: var(--naf-ink); }
.noryx-af-section:not(:first-child) { margin-top: 34px; }
.noryx-af-sub { font-size: 13.5px; color: var(--naf-muted); margin: -10px 0 18px; }
.noryx-af-muted { color: var(--naf-muted); }

/* ------------------------------------------------------------------
   Notices
   ------------------------------------------------------------------ */
.noryx-af-notice {
	padding: 14px 18px; border-radius: var(--naf-r);
	border: 1px solid var(--naf-line); background: var(--naf-paper-2); margin: 0 0 18px;
	font-size: 14px;
}
.noryx-af-notice--success { border-color: rgba(21,127,76,.35); background: rgba(21,127,76,.07); }
.noryx-af-notice--error   { border-color: rgba(180,35,24,.35); background: rgba(180,35,24,.06); }
.noryx-af-notice--info    { border-color: rgba(27,77,134,.3); background: rgba(27,77,134,.06); }

/* ------------------------------------------------------------------
   Botões (padrão do tema: navy → hover azul, radius 6)
   ------------------------------------------------------------------ */
.noryx-af-btn {
	background: var(--naf-navy); color: #fff; border: 1px solid var(--naf-navy);
	border-radius: var(--naf-r-sm); padding: 13px 22px;
	font-family: inherit; font-size: 14px; font-weight: 600; cursor: pointer;
	white-space: nowrap; text-decoration: none;
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	transition: background-color .2s ease, border-color .2s ease;
}
.noryx-af-btn:hover { background: var(--naf-blue); border-color: var(--naf-blue); color: #fff; }
.noryx-af-btn--ghost { background: #fff; color: var(--naf-navy); border: 1px solid var(--naf-line-2); }
.noryx-af-btn--ghost:hover { background: #fff; color: var(--naf-blue); border-color: var(--naf-blue); }
.noryx-af-btn--full { display: flex; width: 100%; box-sizing: border-box; }
.noryx-af-copy.copied { background: var(--naf-green); border-color: var(--naf-green); }
.noryx-af-link-sm { display: inline-block; margin-top: 8px; font-size: 13px; color: var(--naf-blue); text-decoration: none; font-weight: 500; }
.noryx-af-link-sm:hover { color: var(--naf-navy); }

/* ------------------------------------------------------------------
   Link card (bloco cinza .linkcard do design)
   ------------------------------------------------------------------ */
.noryx-af-linkcard { background: var(--naf-paper-2); border: 1px solid var(--naf-line); border-radius: var(--naf-r); padding: 20px; margin-bottom: 14px; }
.noryx-af-linkcard .noryx-af-lab { font-size: 13px; color: var(--naf-ink-2); font-weight: 500; margin-bottom: 10px; }

.noryx-af-linkbox { display: flex; gap: 10px; flex-wrap: wrap; margin: 0 0 4px; }
.noryx-af-linkbox__input {
	flex: 1; min-width: 200px; background: #fff; border: 1px solid var(--naf-line-2);
	border-radius: var(--naf-r-sm); padding: 13px 14px;
	font-family: inherit; font-size: 14px; color: var(--naf-ink-2); resize: vertical;
}
.noryx-af-linkbox__input:focus { border-color: var(--naf-blue); outline: none; box-shadow: 0 0 0 3px rgba(27,77,134,.12); }
.noryx-af-embed-label { display: block; font-size: 13px; color: var(--naf-ink-2); font-weight: 500; margin: 14px 0 7px; }
.noryx-af-embed-label:first-child { margin-top: 0; }

/* ------------------------------------------------------------------
   Compartilhar — pills neutras (design aprovado)
   ------------------------------------------------------------------ */
.noryx-af-share { display: flex; gap: 9px; margin-top: 4px; flex-wrap: wrap; }
.noryx-af-sharebtn {
	font-size: 13px; color: var(--naf-ink-2); text-decoration: none;
	border: 1px solid var(--naf-line-2); border-radius: 999px; padding: 9px 15px;
	display: inline-flex; align-items: center; gap: 7px; font-weight: 500; background: #fff;
	transition: color .2s, border-color .2s;
}
.noryx-af-sharebtn:hover { border-color: var(--naf-blue); color: var(--naf-blue); }

/* ------------------------------------------------------------------
   Stat cards (.statcard do design)
   ------------------------------------------------------------------ */
.noryx-af-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 14px; margin: 0 0 8px; }
@media (max-width: 720px) {
	.noryx-af-cards { grid-template-columns: 1fr 1fr; }
	.noryx-af-card { padding: 14px; }
	.noryx-af-card__value { font-size: 21px; }
}
.noryx-af-card { border: 1px solid var(--naf-line); border-radius: 12px; padding: 18px; background: #fff; min-width: 0; }
.noryx-af-card .noryx-af-card__value { overflow-wrap: anywhere; }
.noryx-af-card__label { display: block; font-size: 12.5px; color: var(--naf-muted); }
.noryx-af-card__value { display: block; font-size: 26px; font-weight: 700; letter-spacing: -.025em; margin-top: 6px; color: var(--naf-ink); }
.noryx-af-card__value--green { color: var(--naf-green); }
.noryx-af-card__value--blue { color: var(--naf-blue); }
.noryx-af-trend { display: block; font-size: 11.5px; font-weight: 600; margin-top: 5px; }
.noryx-af-trend--up { color: var(--naf-green); }
.noryx-af-trend--down { color: var(--naf-red); }
.noryx-af-trend--flat { color: var(--naf-muted); }

/* ------------------------------------------------------------------
   Tabelas (.tbl do design) — viram cards no mobile via data-th
   ------------------------------------------------------------------ */
.noryx-af-table { width: 100%; border-collapse: collapse; border: 1px solid var(--naf-line); border-radius: var(--naf-r); overflow: hidden; margin: 0 0 20px; }
.noryx-af-table thead th {
	background: var(--naf-paper-2); text-align: left; font-size: 12px; color: var(--naf-muted);
	font-weight: 600; padding: 13px 16px; border-bottom: 1px solid var(--naf-line);
	text-transform: none; letter-spacing: 0;
}
.noryx-af-table tbody td { padding: 15px 16px; font-size: 14px; border-bottom: 1px solid var(--naf-line); color: var(--naf-ink); }
.noryx-af-table tbody tr:last-child td { border-bottom: none; }
.noryx-af-comm { color: var(--naf-green); font-weight: 600; }
@media (max-width: 620px) {
	.noryx-af-table { border: none; }
	.noryx-af-table thead { display: none; }
	.noryx-af-table tbody tr { display: block; border: 1px solid var(--naf-line); border-radius: var(--naf-r); margin-bottom: 10px; background: #fff; }
	.noryx-af-table tbody td { display: flex; justify-content: space-between; gap: 14px; padding: 11px 14px; text-align: right; border-bottom: none; }
	.noryx-af-table tbody td::before { content: attr(data-th); font-weight: 600; color: var(--naf-ink-2); text-align: left; }
	.noryx-af-table tbody td:empty { display: none; }
}

/* ------------------------------------------------------------------
   Tags de status (.tag do design)
   ------------------------------------------------------------------ */
.noryx-af-badge { font-size: 11.5px; font-weight: 600; padding: 4px 11px; border-radius: 999px; display: inline-block; }
.noryx-af-badge--paid     { color: var(--naf-green); background: rgba(21,127,76,.1); }
.noryx-af-badge--unpaid   { color: var(--naf-blue); background: rgba(27,77,134,.1); }
.noryx-af-badge--pending  { color: #7a5f22; background: rgba(201,161,90,.16); }
.noryx-af-badge--rejected { color: var(--naf-red); background: rgba(180,35,24,.08); }
.noryx-af-badge--active   { color: var(--naf-green); background: rgba(21,127,76,.1); }
.noryx-af-badge--inactive { color: var(--naf-muted); background: var(--naf-paper-2); }
.noryx-af-badge--blocked  { color: #fff; background: var(--naf-ink-2); }

/* ------------------------------------------------------------------
   Gráfico (Chart.js) + seletor de período
   ------------------------------------------------------------------ */
.noryx-af-graphhead { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.noryx-af-range { display: inline-flex; border: 1px solid var(--naf-line-2); border-radius: var(--naf-r-sm); overflow: hidden; }
.noryx-af-range__btn {
	background: #fff; border: 0; padding: 9px 14px; cursor: pointer;
	font-size: 13px; font-family: inherit; font-weight: 500; color: var(--naf-ink-2);
	border-left: 1px solid var(--naf-line-2);
}
.noryx-af-range__btn:first-child { border-left: 0; }
.noryx-af-range__btn.is-active { background: var(--naf-navy); color: #fff; }
.noryx-af-chartwrap { position: relative; height: 280px; margin: 14px 0 8px; padding: 14px; border: 1px solid var(--naf-line); border-radius: var(--naf-r); background: #fff; }
.noryx-af-chartwrap.is-loading { opacity: .5; }

/* ------------------------------------------------------------------
   Saldo (card navy .balance — aba Pagamentos)
   ------------------------------------------------------------------ */
.noryx-af-balance {
	background: var(--naf-navy); color: #fff; border-radius: 12px; padding: 24px;
	display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 20px; align-items: center; margin-bottom: 20px;
}
.noryx-af-balance > * { min-width: 0; }
@media (max-width: 560px) { .noryx-af-balance { grid-template-columns: 1fr; } }
.noryx-af-balance .k { font-size: 12.5px; color: rgba(255,255,255,.55); }
.noryx-af-balance .v { font-size: 32px; font-weight: 700; letter-spacing: -.025em; margin-top: 3px; }
.noryx-af-balance .n { font-size: 12.5px; color: rgba(255,255,255,.55); margin-top: 6px; }

/* ------------------------------------------------------------------
   QR + compartilhar (aba Links)
   ------------------------------------------------------------------ */
.noryx-af-linkgrid { display: grid; grid-template-columns: auto 1fr; gap: 20px; align-items: start; margin-top: 14px; }
@media (max-width: 640px) { .noryx-af-linkgrid { grid-template-columns: 1fr; } }
.noryx-af-qr {
	width: 172px; height: 172px; padding: 10px;
	border: 1px solid var(--naf-line); border-radius: var(--naf-r); background: #fff;
	display: flex; align-items: center; justify-content: center;
}
.noryx-af-qr img { width: 100%; height: 100%; image-rendering: pixelated; }
.noryx-af-qrbox .noryx-af-btn { margin-top: 10px; width: 172px; box-sizing: border-box; }

/* ------------------------------------------------------------------
   Materiais (.crea do design)
   ------------------------------------------------------------------ */
.noryx-af-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.noryx-af-chip {
	padding: 8px 15px; border: 1px solid var(--naf-line-2); border-radius: 999px;
	text-decoration: none; color: var(--naf-ink-2); font-size: 13px; font-weight: 500; background: #fff;
}
.noryx-af-chip:hover { border-color: var(--naf-blue); color: var(--naf-blue); }
.noryx-af-chip.is-active { background: var(--naf-navy); color: #fff; border-color: var(--naf-navy); }

.noryx-af-creatives { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
@media (max-width: 760px) { .noryx-af-creatives { grid-template-columns: 1fr 1fr; } }
@media (max-width: 480px) { .noryx-af-creatives { grid-template-columns: 1fr; } }
.noryx-af-creative { border: 1px solid var(--naf-line); border-radius: 12px; overflow: hidden; background: #fff; display: flex; flex-direction: column; }
.noryx-af-creative__preview {
	min-height: 110px; background: linear-gradient(135deg, var(--naf-navy), #243a58);
	display: flex; align-items: center; justify-content: center; padding: 14px; position: relative;
}
.noryx-af-creative__preview img { max-width: 100%; height: auto; border-radius: 4px; }
.noryx-af-creative__text { font-weight: 700; letter-spacing: .2em; color: #fff; font-size: 13px; text-align: center; }
.noryx-af-dim { position: absolute; bottom: 8px; right: 10px; font-size: 10px; color: rgba(255,255,255,.5); }
.noryx-af-creative__body { padding: 13px; display: flex; flex-direction: column; }
.noryx-af-creative__body strong { font-size: 13.5px; font-weight: 600; color: var(--naf-ink); }
.noryx-af-creative__body .noryx-af-muted { font-size: 12.5px; margin: 3px 0 0; }
.noryx-af-creative__body .noryx-af-linkbox { margin-top: 10px; }
.noryx-af-creative__body .noryx-af-linkbox__input { font-size: 12px; padding: 9px 10px; min-width: 0; }
.noryx-af-creative__body .noryx-af-btn { padding: 9px 14px; font-size: 12.5px; }

/* ------------------------------------------------------------------
   Cupons (.coupon do design)
   ------------------------------------------------------------------ */
.noryx-af-coupon {
	display: flex; align-items: center; justify-content: space-between; gap: 14px;
	border: 1px solid var(--naf-line); border-radius: 12px; padding: 16px 18px;
	margin-bottom: 10px; flex-wrap: wrap; background: #fff;
}
.noryx-af-coupon .code {
	font-size: 16px; font-weight: 700; letter-spacing: .04em; padding: 6px 14px;
	border: 1px dashed var(--naf-blue); border-radius: var(--naf-r-sm);
	color: var(--naf-blue); background: rgba(27,77,134,.05);
}
.noryx-af-coupon .ci { flex: 1; min-width: 160px; }
.noryx-af-coupon .ct { font-size: 13.5px; font-weight: 600; }
.noryx-af-coupon .cs { font-size: 12.5px; color: var(--naf-muted); }
.noryx-af-coupon .cu { font-size: 13px; color: var(--naf-ink-2); text-align: right; }
.noryx-af-coupon .cu b { display: block; font-size: 18px; font-weight: 700; color: var(--naf-ink); }

/* ------------------------------------------------------------------
   Formulários (.frow do design)
   ------------------------------------------------------------------ */
.noryx-af-form { max-width: 560px; }
.noryx-af-field { margin-bottom: 16px; }
.noryx-af-field label { display: block; font-size: 13px; color: var(--naf-ink-2); font-weight: 500; margin-bottom: 7px; }
.noryx-af-field input[type="text"],
.noryx-af-field input[type="email"],
.noryx-af-field input[type="password"],
.noryx-af-field input[type="url"],
.noryx-af-field textarea {
	width: 100%; border: 1px solid var(--naf-line-2); border-radius: var(--naf-r-sm);
	padding: 13px 14px; font-family: inherit; font-size: 14px; outline: none;
	background: #fff; box-sizing: border-box; color: var(--naf-ink);
}
.noryx-af-field input:focus, .noryx-af-field textarea:focus {
	border-color: var(--naf-blue); box-shadow: 0 0 0 3px rgba(27,77,134,.12);
}
.noryx-af-field--check label { font-weight: 400; font-size: 13.5px; color: var(--naf-ink-2); }

/* ------------------------------------------------------------------
   Paginação
   ------------------------------------------------------------------ */
.noryx-af-pagination { display: flex; gap: 6px; margin: 10px 0; }
.noryx-af-page {
	padding: 7px 13px; border: 1px solid var(--naf-line-2); border-radius: var(--naf-r-sm);
	text-decoration: none; color: var(--naf-ink-2); font-size: 13.5px; font-weight: 500;
}
.noryx-af-page:hover { border-color: var(--naf-blue); color: var(--naf-blue); }
.noryx-af-page.is-active { background: var(--naf-navy); color: #fff; border-color: var(--naf-navy); }

/* ==================================================================
   LANDING "Seja um Parceiro"
   ================================================================== */
.noryx-af-eyebrow {
	display: inline-block; font-size: 11px; font-weight: 600; letter-spacing: .16em;
	text-transform: uppercase; color: var(--naf-blue); margin-bottom: 12px;
}
.noryx-af-hero { text-align: center; padding: 36px 16px 34px; max-width: 720px; margin: 0 auto; }
.noryx-af-hero__title {
	font-size: clamp(28px, 5vw, 40px); font-weight: 700; letter-spacing: -.025em;
	color: var(--naf-ink); margin: 0 0 14px; line-height: 1.12;
}
.noryx-af-hero__sub { font-size: 16px; color: var(--naf-ink-2); margin: 0 auto 24px; max-width: 600px; line-height: 1.6; }
.noryx-af-hero__ctas { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }

.noryx-af-land-stats {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 1px;
	background: var(--naf-line); border: 1px solid var(--naf-line); border-radius: 14px; overflow: hidden;
	max-width: 860px; margin: 0 auto 44px;
}
.noryx-af-land-stat { background: #fff; padding: 20px 16px; text-align: center; display: flex; flex-direction: column; gap: 4px; }
.noryx-af-land-stat strong { font-size: 21px; color: var(--naf-ink); font-weight: 700; letter-spacing: -.02em; }
.noryx-af-land-stat span { font-size: 12.5px; color: var(--naf-muted); }

.noryx-af-land-steps, .noryx-af-land-comm, .noryx-af-land-faq, .noryx-af-land-form { max-width: 860px; margin: 0 auto 44px; }
.noryx-af-land .noryx-af-section { font-size: 21px; letter-spacing: -.02em; text-align: center; margin-bottom: 20px; }

.noryx-af-steps { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; }
.noryx-af-step { border: 1px solid var(--naf-line); border-radius: 12px; padding: 20px; background: #fff; }
.noryx-af-step__n {
	display: inline-flex; width: 28px; height: 28px; align-items: center; justify-content: center;
	border-radius: 999px; background: var(--naf-navy); color: #fff; font-weight: 600; font-size: 13px; margin-bottom: 10px;
}
.noryx-af-step strong { display: block; color: var(--naf-ink); margin-bottom: 4px; font-size: 15px; }
.noryx-af-step p { margin: 0; font-size: 13.5px; color: var(--naf-ink-2); line-height: 1.55; }

.noryx-af-comm-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.noryx-af-comm-card { border: 1px solid var(--naf-line); border-left: 3px solid var(--naf-blue); border-radius: 12px; padding: 20px; background: #fff; }
.noryx-af-comm-card strong { display: block; font-size: 18px; letter-spacing: -.015em; color: var(--naf-ink); margin-bottom: 6px; }
.noryx-af-comm-card p { margin: 0; font-size: 13.5px; color: var(--naf-ink-2); line-height: 1.55; }

.noryx-af-faq { border: 1px solid var(--naf-line); border-radius: var(--naf-r); background: #fff; margin-bottom: 8px; padding: 0 18px; }
.noryx-af-faq summary { cursor: pointer; font-weight: 600; font-size: 14.5px; color: var(--naf-ink); padding: 15px 0; list-style: none; position: relative; padding-right: 24px; }
.noryx-af-faq summary::-webkit-details-marker { display: none; }
.noryx-af-faq summary::after { content: '+'; position: absolute; right: 0; top: 13px; color: var(--naf-blue); font-size: 18px; font-weight: 600; }
.noryx-af-faq[open] summary::after { content: '–'; }
.noryx-af-faq p { margin: 0 0 15px; color: var(--naf-ink-2); font-size: 13.5px; line-height: 1.6; }

.noryx-af-formcard, .noryx-af-login__card {
	border: 1px solid var(--naf-line); border-radius: 14px; background: #fff; padding: 28px;
	max-width: 560px; margin: 0 auto;
}
.noryx-af-formcard h3, .noryx-af-login__card h3 { margin: 0 0 6px; font-size: 21px; font-weight: 700; letter-spacing: -.02em; color: var(--naf-ink); }
.noryx-af-formcard > .noryx-af-muted, .noryx-af-login__card > .noryx-af-muted { display: block; font-size: 13.5px; margin: 0 0 20px; }
.noryx-af-formcard .noryx-af-form { max-width: none; }

/* ==================================================================
   LOGIN do parceiro
   ================================================================== */
.noryx-af-login { padding: 26px 0; }
.noryx-af-login__card .login-username label,
.noryx-af-login__card .login-password label { display: block; font-size: 13px; font-weight: 500; margin-bottom: 7px; color: var(--naf-ink-2); }
.noryx-af-login__card .login-username input,
.noryx-af-login__card .login-password input {
	width: 100%; padding: 13px 14px; border: 1px solid var(--naf-line-2); border-radius: var(--naf-r-sm);
	font-size: 14px; box-sizing: border-box; font-family: inherit; background: #fff;
}
.noryx-af-login__card .login-username input:focus,
.noryx-af-login__card .login-password input:focus { border-color: var(--naf-blue); outline: none; box-shadow: 0 0 0 3px rgba(27,77,134,.12); }
.noryx-af-login__card .login-username, .noryx-af-login__card .login-password { margin-bottom: 16px; }
.noryx-af-login__card .login-remember { margin-bottom: 16px; font-size: 13.5px; color: var(--naf-ink-2); }
.noryx-af-login__card .login-submit input[type="submit"] {
	width: 100%; background: var(--naf-navy); color: #fff; border: 1px solid var(--naf-navy);
	padding: 13px 22px; border-radius: var(--naf-r-sm); cursor: pointer;
	font-weight: 600; font-size: 14px; font-family: inherit;
	transition: background-color .2s ease;
}
.noryx-af-login__card .login-submit input[type="submit"]:hover { background: var(--naf-blue); border-color: var(--naf-blue); }
.noryx-af-login__alt { text-align: center; margin: 14px 0 0; font-size: 13.5px; }
.noryx-af-login__alt a { color: var(--naf-blue); text-decoration: none; font-weight: 500; }
.noryx-af-login__alt a:hover { color: var(--naf-navy); }
.noryx-af-login__divider {
	display: flex; align-items: center; gap: 12px; margin: 20px 0 14px;
	color: var(--naf-muted); font-size: 11px; text-transform: uppercase; letter-spacing: .14em; font-weight: 600;
}
.noryx-af-login__divider::before, .noryx-af-login__divider::after { content: ''; flex: 1; height: 1px; background: var(--naf-line); }

/* ==================================================================
   RANKING
   ================================================================== */
.noryx-af-podium { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.noryx-af-rank { display: flex; align-items: center; gap: 14px; padding: 14px 16px; border: 1px solid var(--naf-line); border-radius: 12px; background: #fff; }
.noryx-af-rank__pos {
	width: 30px; height: 30px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center;
	font-weight: 700; font-size: 13px; background: var(--naf-paper-2); color: var(--naf-ink-2); flex-shrink: 0;
}
.noryx-af-rank__name { flex: 1; font-weight: 500; font-size: 14px; }
.noryx-af-rank__val { font-weight: 700; color: var(--naf-ink); font-feature-settings: "tnum" 1; }
.noryx-af-rank--1 .noryx-af-rank__pos { background: var(--naf-gold); color: #fff; }
.noryx-af-rank--2 .noryx-af-rank__pos { background: #C0C0C0; color: #fff; }
.noryx-af-rank--3 .noryx-af-rank__pos { background: #CD7F32; color: #fff; }

/* ------------------------------------------------------------------
   Pagamento em cripto — aviso + carteira ativa
   ------------------------------------------------------------------ */
.noryx-af-cryptonote {
	background: rgba(27,77,134,.06);
	border: 1px solid rgba(27,77,134,.28);
	border-radius: var(--naf-r);
	padding: 14px 16px;
	font-size: 13.5px;
	color: var(--naf-ink-2);
	line-height: 1.55;
	margin: 0 0 18px;
}
.noryx-af-cryptonote strong { color: var(--naf-navy); }

.noryx-af-wallet-current {
	display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
	background: var(--naf-paper-2); border: 1px solid var(--naf-line);
	border-radius: var(--naf-r); padding: 14px 16px; margin: 0 0 18px;
}
.noryx-af-wallet-current .k { font-size: 12px; letter-spacing: .05em; text-transform: uppercase; color: var(--naf-muted); font-weight: 600; }
.noryx-af-wallet-current .v {
	font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
	font-size: 14px; font-weight: 600; color: var(--naf-ink);
	background: #fff; border: 1px solid var(--naf-line-2); border-radius: var(--naf-r-sm);
	padding: 6px 10px; overflow-wrap: anywhere;
}
.noryx-af-wallet-current .net { font-size: 12.5px; color: var(--naf-blue); font-weight: 600; margin-left: auto; }
@media (max-width: 560px) { .noryx-af-wallet-current .net { margin-left: 0; } }

.noryx-af-hint { display: block; font-size: 12.5px; color: var(--naf-muted); margin-top: 6px; line-height: 1.5; }
.noryx-af-field select {
	width: 100%; box-sizing: border-box; background: #fff;
	border: 1px solid var(--naf-line-2); border-radius: var(--naf-r-sm);
	padding: 12px 13px; font-family: inherit; font-size: 14px; color: var(--naf-ink);
}
.noryx-af-field select:focus { border-color: var(--naf-blue); outline: none; box-shadow: 0 0 0 3px rgba(27,77,134,.12); }
.noryx-af-field input[type="text"] { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
