/* Batch 24 - partner platform (/partners, /partners/{program}, /partners/apply, /partners/dashboard).
   Emerald on black, Rajdhani display + Poppins body like /about. Logical properties so /ar/ mirrors itself. */
.nxp { --nxp-g: #45f882; --nxp-g2: #2fd06a; --nxp-ink: #eef2f8; --nxp-mute: #b6b7b6; --nxp-dim: #8f948f; --nxp-line: rgba(156, 157, 156, .18); --nxp-surf: rgba(12, 21, 17, .78); --nxp-surf2: rgba(255, 255, 255, .03);
  color: var(--nxp-ink); padding-block: 56px 88px; font-family: Poppins, sans-serif; }
.nxp .container { max-width: 1200px; }
.nxp ::selection { background: rgba(69, 248, 130, .35); color: #fff; }
.nxp-display { margin: 0 0 14px; font: 800 clamp(30px, 4.4vw, 52px)/1.05 Rajdhani, Poppins, sans-serif; letter-spacing: -.01em; color: #fff; text-wrap: balance; }
.nxp-sub { margin: 0; font: 500 16px/1.7 Poppins, sans-serif; color: var(--nxp-mute); max-width: 64ch; }
.nxp-h { margin: 0 0 18px; font: 800 clamp(22px, 2.6vw, 30px)/1.15 Rajdhani, Poppins, sans-serif; color: #fff; padding: 0; border: 0; float: none; width: auto; }
.nxp-note { font: 500 13px/1.6 Poppins, sans-serif; color: var(--nxp-dim); margin: 12px 0 0; max-width: 80ch; }
.nxp-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding-inline: 22px; border-radius: 10px; border: 1px solid var(--nxp-g); background: var(--nxp-g); color: #03140a;
  font: 700 15px/1 Poppins, sans-serif; text-decoration: none; cursor: pointer; transition: background-color .18s ease-out, transform .18s ease-out; }
.nxp-btn:hover { background: #6dffa0; color: #03140a; }
.nxp-btn:active { transform: translateY(1px); }
.nxp-btn:disabled { opacity: .55; cursor: not-allowed; }
.nxp-btn--ghost { background: transparent; color: var(--nxp-g); border-color: rgba(69, 248, 130, .45); }
.nxp-btn--ghost:hover { background: rgba(69, 248, 130, .1); color: #fff; }
.nxp a:focus-visible, .nxp button:focus-visible, .nxp input:focus-visible, .nxp textarea:focus-visible, .nxp select:focus-visible, .nxp [tabindex]:focus-visible { outline: 2px solid var(--nxp-g); outline-offset: 3px; }
.nxp-link { font: 700 14px/1.2 Poppins, sans-serif; color: var(--nxp-g); text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.nxp-link:hover { color: #fff; }
.nxp-row-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; margin-block-start: 24px; }

/* overview: one ledger, three rows */
.nxp-lead { margin-block-end: 44px; }
.nxp-lead--program { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: 48px; align-items: start; }
.nxp-ledger { border-block-start: 1px solid var(--nxp-line); }
.nxp-row { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.5fr) auto; gap: 28px 40px; align-items: center; padding-block: 30px; border-block-end: 1px solid var(--nxp-line); }
.nxp-row-head h3 { margin: 0 0 6px; font: 800 26px/1.1 Rajdhani, Poppins, sans-serif; color: #fff; }
.nxp-row-head p { margin: 0; font: 600 14.5px/1.55 Poppins, sans-serif; color: var(--nxp-g); }
.nxp-row-facts { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; margin: 0; }
.nxp-row-facts dt, .nxp-terms dt, .nxp-rules dt { font: 700 12px/1.3 Poppins, sans-serif; color: var(--nxp-dim); margin: 0 0 6px; letter-spacing: .02em; }
.nxp-row-facts dd { margin: 0; font: 500 14.5px/1.65 Poppins, sans-serif; color: #d6d8d6; }
.nxp-row .nxp-row-cta { margin: 0; flex-wrap: nowrap; }

/* program terms sheet */
.nxp-terms { margin: 0; padding: 8px 24px; border-radius: 14px; background: var(--nxp-surf); border: 1px solid var(--nxp-line); }
.nxp-terms > div { padding-block: 16px; border-block-end: 1px solid var(--nxp-line); }
.nxp-terms > div:last-child { border-block-end: 0; }
.nxp-terms dd { margin: 0; font: 600 15px/1.55 Poppins, sans-serif; color: #fff; }
.nxp-terms--inline { display: flex; flex-wrap: wrap; gap: 0 32px; padding-block: 4px; }
.nxp-terms--inline > div { border: 0; }
.nxp-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; margin-block-start: 64px; }
.nxp-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.nxp-list li { position: relative; padding-inline-start: 26px; font: 500 15px/1.6 Poppins, sans-serif; color: #d6d8d6; }
.nxp-list li::before { content: ""; position: absolute; inset-inline-start: 2px; inset-block-start: .55em; width: 12px; height: 7px; border-inline-start: 2px solid var(--nxp-g); border-block-end: 2px solid var(--nxp-g); transform: rotate(-45deg); }
.nxp-list--plain li::before { width: 7px; height: 2px; border: 0; background: var(--nxp-dim); transform: none; inset-block-start: .8em; }
.nxp-api { margin-block-start: 64px; }
.nxp-code { margin-block-start: 18px; border-radius: 12px; background: #050906; border: 1px solid var(--nxp-line); overflow-x: auto; }
.nxp-code pre { margin: 0; padding: 18px 20px; font: 500 13px/1.75 ui-monospace, Menlo, Consolas, monospace; color: #c9f7d9; white-space: pre; text-align: left; }
.nxp-band { margin-block-start: 72px; }
.nxp-rules { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 0 36px; margin: 0; }
.nxp-rules > div { padding-block: 18px; border-block-start: 1px solid var(--nxp-line); }
.nxp-rules dt { font-size: 15px; color: #fff; letter-spacing: 0; }
.nxp-rules dd { margin: 0; font: 500 14px/1.65 Poppins, sans-serif; color: var(--nxp-mute); }
.nxp-flow { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); counter-reset: nxp; }
.nxp-flow li { counter-increment: nxp; position: relative; padding: 44px 22px 0 0; padding-inline: 0 22px; display: grid; gap: 6px; align-content: start; }
.nxp-flow li::before { content: counter(nxp); position: absolute; inset-block-start: 0; inset-inline-start: 0; width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; font: 800 13px/1 Poppins, sans-serif; color: #03140a; background: var(--nxp-g); }
.nxp-flow li::after { content: ""; position: absolute; inset-block-start: 15px; inset-inline: 40px 10px; height: 1px; background: var(--nxp-line); }
.nxp-flow li:last-child::after { display: none; }
.nxp-flow b { font: 800 17px/1.3 Poppins, sans-serif; color: #fff; }
.nxp-flow span { font: 500 14px/1.6 Poppins, sans-serif; color: var(--nxp-mute); }

/* application */
.nxp-apply-grid { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 40px; align-items: start; }
.nxp-steps-rail { position: sticky; inset-block-start: 110px; }
.nxp-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
.nxp-steps li { position: relative; padding-block: 0 22px; padding-inline-start: 34px; display: grid; gap: 2px; }
.nxp-steps li::before { content: ""; position: absolute; inset-inline-start: 6px; inset-block-start: 4px; width: 12px; height: 12px; border-radius: 50%; border: 2px solid var(--nxp-dim); background: #08100b; }
.nxp-steps li::after { content: ""; position: absolute; inset-inline-start: 12px; inset-block: 20px 0; width: 1px; background: var(--nxp-line); }
.nxp-steps li:last-child::after { display: none; }
.nxp-steps b { font: 700 15px/1.3 Poppins, sans-serif; color: var(--nxp-mute); }
.nxp-steps span { font: 500 12.5px/1.4 Poppins, sans-serif; color: var(--nxp-dim); }
.nxp-steps li[aria-current="step"] b { color: #fff; }
.nxp-steps li[aria-current="step"]::before { border-color: var(--nxp-g); background: var(--nxp-g); box-shadow: 0 0 0 4px rgba(69, 248, 130, .18); }
.nxp-steps li.is-done::before { border-color: var(--nxp-g); background: #08100b; }
.nxp-steps li.is-done b { color: var(--nxp-g); }
.nxp-save { min-height: 20px; margin: 4px 0 0; font: 600 12.5px/1.4 Poppins, sans-serif; color: var(--nxp-dim); }
.nxp-panel { padding: 32px; border-radius: 16px; background: var(--nxp-surf); border: 1px solid var(--nxp-line); min-width: 0; }
.nxp-step { border: 0; margin: 0; padding: 0; min-width: 0; }
.nxp-step legend:focus { outline: none; }
.nxp-fields, .nxp-step[data-step="3"] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 18px; }
.nxp-step[data-step="3"] > legend { grid-column: 1 / -1; }
.nxp-fields[hidden] { display: none; }
.nxp-f { grid-column: 1 / -1; display: grid; gap: 7px; margin: 0; min-width: 0; }
.nxp-f--half { grid-column: auto; }
.nxp-f > span { font: 600 14px/1.4 Poppins, sans-serif; color: #fff; }
.nxp-f small { font: 500 12.5px/1.5 Poppins, sans-serif; color: var(--nxp-dim); }
.nxp-f input:not([type="checkbox"]):not([type="radio"]), .nxp-f textarea, .nxp-f select, .nxd-copy input { width: 100%; min-height: 46px; padding: 11px 14px; border-radius: 10px; border: 1px solid rgba(156, 157, 156, .28);
  background: #070d09; color: #fff; font: 500 15px/1.5 Poppins, sans-serif; caret-color: var(--nxp-g); transition: border-color .15s ease-out; }
.nxp-f textarea { resize: vertical; min-height: 96px; }
.nxp-f input:focus, .nxp-f textarea:focus, .nxp-f select:focus { border-color: var(--nxp-g); }
.nxp-f [aria-invalid="true"] { border-color: #ff7a6b; }
.nxp-err { display: block; min-height: 0; margin: 0; font: 600 12.5px/1.45 Poppins, sans-serif; font-style: normal; color: #ff8f82; }
.nxp-err:empty { display: none; }
.nxp-err--form { margin-block-start: 16px; }
.nxp-types { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.nxp-type { position: relative; display: grid; gap: 8px; align-content: start; padding: 20px; border-radius: 14px; border: 1px solid var(--nxp-line); background: var(--nxp-surf2); cursor: pointer; transition: border-color .15s ease-out, background-color .15s ease-out; }
.nxp-type input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
.nxp-type b { font: 800 20px/1.15 Rajdhani, Poppins, sans-serif; color: #fff; }
.nxp-type span { font: 500 13.5px/1.55 Poppins, sans-serif; color: var(--nxp-mute); }
.nxp-type:hover { border-color: rgba(69, 248, 130, .45); }
.nxp-type.is-on, .nxp-type:has(input:checked) { border-color: var(--nxp-g); background: rgba(69, 248, 130, .07); }
.nxp-type:has(input:focus-visible) { outline: 2px solid var(--nxp-g); outline-offset: 3px; }
.nxp-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.nxp-chip { position: relative; margin: 0; cursor: pointer; }
.nxp-chip input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
.nxp-chip span { display: inline-flex; align-items: center; min-height: 38px; padding-inline: 14px; border-radius: 999px; border: 1px solid rgba(156, 157, 156, .3); font: 600 13.5px/1 Poppins, sans-serif; color: #d6d8d6; transition: all .15s ease-out; }
.nxp-chip input:checked + span { border-color: var(--nxp-g); background: rgba(69, 248, 130, .14); color: #fff; }
.nxp-chip input:focus-visible + span { outline: 2px solid var(--nxp-g); outline-offset: 2px; }
.nxp-check { grid-column: 1 / -1; display: flex; gap: 12px; align-items: flex-start; margin: 4px 0 0; cursor: pointer; font: 500 14px/1.55 Poppins, sans-serif; color: #d6d8d6; }
.nxp-check input { width: 20px; height: 20px; margin-block-start: 1px; accent-color: var(--nxp-g); flex: none; }
.nxp-review { margin: 0 0 20px; display: grid; gap: 0; }
.nxp-review > div { display: grid; grid-template-columns: minmax(0, 220px) minmax(0, 1fr); gap: 16px; padding-block: 12px; border-block-end: 1px solid var(--nxp-line); }
.nxp-review dt { font: 600 13px/1.5 Poppins, sans-serif; color: var(--nxp-dim); }
.nxp-review dd { margin: 0; font: 500 14.5px/1.55 Poppins, sans-serif; color: #fff; overflow-wrap: anywhere; white-space: pre-line; }
.nxp-review i { color: var(--nxp-dim); }
.nxp-nav { display: flex; justify-content: flex-end; gap: 12px; margin-block-start: 28px; padding-block-start: 22px; border-block-start: 1px solid var(--nxp-line); }
.nxp-nav #nxa-back { margin-inline-end: auto; }
.nxp-gate, .nxp-done { display: grid; gap: 16px; justify-items: start; padding-block: 8px; }
.nxp-gate[hidden], .nxp-done[hidden], form[hidden] { display: none; }
.nxp-gate p, .nxp-done p { margin: 0; font: 500 16px/1.65 Poppins, sans-serif; color: #fff; max-width: 60ch; }
.nxp-mini { list-style: none; margin: 18px 0 0; padding: 0; display: grid; gap: 10px; }
.nxp-mini li { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; padding: 12px 14px; border-radius: 12px; background: var(--nxp-surf2); border: 1px solid var(--nxp-line); font: 600 14px/1.4 Poppins, sans-serif; color: #fff; }
.nxp-mini small { flex-basis: 100%; font: 500 12.5px/1.5 Poppins, sans-serif; color: var(--nxp-mute); }
.nxp-mini--row { grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); margin: 0; }
.nxp-pill { display: inline-flex; align-items: center; min-height: 24px; padding-inline: 10px; border-radius: 999px; font: 700 12px/1 Poppins, sans-serif; background: rgba(156, 157, 156, .16); color: #e4e6e4; }
.nxp-pill--approved, .nxp-pill--paid, .nxp-pill--completed { background: rgba(69, 248, 130, .16); color: var(--nxp-g); }
.nxp-pill--rejected, .nxp-pill--failed, .nxp-pill--reversed, .nxp-pill--cancelled, .nxp-pill--suspended { background: rgba(255, 122, 107, .14); color: #ff9d92; }
.nxp-pill--submitted, .nxp-pill--under_review, .nxp-pill--pending, .nxp-pill--processing, .nxp-pill--paying { background: rgba(255, 190, 24, .13); color: #ffd36b; }
.nxp-empty { margin: 0; padding: 18px; border-radius: 12px; border: 1px dashed rgba(156, 157, 156, .3); font: 500 14px/1.6 Poppins, sans-serif; color: var(--nxp-mute); }
.nxp-once { padding: 14px 16px; border-radius: 12px; border: 1px solid var(--nxp-g); background: rgba(69, 248, 130, .07); display: grid; gap: 8px; margin-block-start: 12px; }
.nxp-once p { margin: 0; font: 600 13.5px/1.5 Poppins, sans-serif; color: #fff; }
.nxp-once code { font: 600 13px/1.5 ui-monospace, Menlo, Consolas, monospace; color: var(--nxp-g); overflow-wrap: anywhere; user-select: all; }

/* dashboard */
.nxd-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 20px; padding-block-end: 26px; border-block-end: 1px solid var(--nxp-line); }
.nxd-head .nxp-sub { display: flex; align-items: center; gap: 8px; }
.nxd-sec { margin-block-start: 40px; }
.nxd-sec-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; margin-block-end: 14px; }
.nxd-sec-head .nxp-h { margin: 0; }
.nxd-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px; }
.nxd-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-block: 1px solid var(--nxp-line); }
.nxd-stats + .nxd-stats { border-block-start: 0; }
.nxd-stat { padding: 18px 20px; display: grid; gap: 6px; border-inline-start: 1px solid var(--nxp-line); }
.nxd-stat:first-child { border-inline-start: 0; padding-inline-start: 0; }
.nxd-stat span { font: 600 12.5px/1.35 Poppins, sans-serif; color: var(--nxp-dim); }
.nxd-stat b { font: 800 26px/1.1 Rajdhani, Poppins, sans-serif; color: #fff; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.nxd-stat.is-key b { color: var(--nxp-g); }
.nxd-links { display: grid; gap: 18px; }
.nxd-copy { display: grid; gap: 7px; }
.nxd-copy label { font: 600 13px/1.4 Poppins, sans-serif; color: var(--nxp-dim); margin: 0; }
.nxd-copy > div { display: flex; gap: 10px; }
.nxd-copy input { flex: 1; min-width: 0; }
.nxd-copy small { font: 500 12.5px/1.5 Poppins, sans-serif; color: var(--nxp-dim); }
.nxd-bars { display: grid; grid-template-columns: repeat(30, minmax(0, 1fr)); align-items: end; gap: 3px; block-size: 120px; padding-block-end: 2px; border-block-end: 1px solid var(--nxp-line); }
.nxd-bars i { display: block; background: var(--nxp-g2); border-radius: 2px 2px 0 0; min-block-size: 2px; }
.nxd-axis { display: flex; justify-content: space-between; margin: 6px 0 0; font: 500 12px/1 Poppins, sans-serif; color: var(--nxp-dim); }
.nxd-tablewrap { overflow-x: auto; border-radius: 12px; border: 1px solid var(--nxp-line); }
.nxd-table { width: 100%; border-collapse: collapse; font: 500 14px/1.5 Poppins, sans-serif; font-variant-numeric: tabular-nums; }
.nxd-table th { padding: 12px 14px; text-align: start; font: 700 12px/1.3 Poppins, sans-serif; color: var(--nxp-dim); background: rgba(255, 255, 255, .025); white-space: nowrap; }
.nxd-table td { padding: 12px 14px; border-block-start: 1px solid var(--nxp-line); color: #e6e8e6; vertical-align: middle; }
.nxd-table code { font: 600 12.5px/1 ui-monospace, Menlo, Consolas, monospace; color: var(--nxp-g); }
.nxd-inline { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px; margin-block-end: 14px; }
.nxd-inline .nxp-f { flex: 1 1 260px; grid-column: auto; }

@media (max-width: 991px) {
  .nxp-row { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .nxp-lead--program, .nxp-split, .nxd-two { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .nxp-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 0; }
  .nxp-flow li:nth-child(2)::after { display: none; }
  .nxp-apply-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .nxp-steps-rail { position: static; }
  .nxp-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .nxp-steps li { padding: 22px 6px 0 0; padding-inline: 0 6px; }
  .nxp-steps li::before { inset-inline-start: 0; inset-block-start: 0; }
  .nxp-steps li::after { inset-block: 6px auto; inset-inline: 18px 4px; width: auto; height: 1px; }
  .nxp-steps span { display: none; }
  .nxp-steps b { font-size: 12.5px; }
  .nxd-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nxd-stat:nth-child(3) { border-inline-start: 0; padding-inline-start: 0; }
  .nxd-stat:nth-child(n+3) { border-block-start: 1px solid var(--nxp-line); }
}
@media (max-width: 575px) {
  .nxp { padding-block: 36px 64px; }
  .nxp-row-facts, .nxp-types, .nxp-fields, .nxp-step[data-step="3"] { grid-template-columns: minmax(0, 1fr); }
  .nxp-f--half { grid-column: 1 / -1; }
  .nxp-panel { padding: 20px 16px; }
  .nxp-flow { grid-template-columns: minmax(0, 1fr); }
  .nxp-flow li::after { display: none; }
  .nxp-review > div { grid-template-columns: minmax(0, 1fr); gap: 4px; }
  .nxp-nav .nxp-btn { flex: 1; }
  .nxp-row .nxp-row-cta { flex-wrap: wrap; }
  .nxd-copy > div { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) { .nxp * { transition: none !important; scroll-behavior: auto !important; } }
