.ctnv-aff-wrap{max-width:1120px;margin:28px auto;color:#ededed}.ctnv-aff-wrap *{box-sizing:border-box}.ctnv-aff-form,.ctnv-aff-panel,.ctnv-aff-dashboard-head{background:#101214;color:#eee;border:1px solid #2a2f33;padding:24px;border-radius:10px}.ctnv-aff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.ctnv-aff-form label,.ctnv-aff-panel label{display:block;font-weight:700;margin-bottom:7px}.ctnv-aff-form input,.ctnv-aff-form select,.ctnv-aff-form textarea,.ctnv-aff-panel input{box-sizing:border-box;width:100%;background:#171a1d;color:#fff;border:1px solid #444c52;border-radius:5px;padding:11px}.ctnv-aff-button{display:inline-flex;align-items:center;justify-content:center;background:#5dbbdf;color:#07161c!important;border:0;border-radius:5px;padding:11px 18px;font-weight:800;cursor:pointer;text-decoration:none!important;white-space:nowrap}.ctnv-aff-button:hover{filter:brightness(1.06)}.ctnv-aff-button-small{padding:8px 12px;font-size:13px}.ctnv-aff-alert{padding:14px 16px;margin:0 0 18px;border-left:4px solid}.ctnv-aff-success{background:#edf9f0;border-color:#2d8a45;color:#153b20}.ctnv-aff-warning{background:#fff8e5;border-color:#dba617;color:#4c3900}.ctnv-aff-error{background:#fdecec;border-color:#ba2d2d;color:#551212}.ctnv-aff-hp{position:absolute!important;left:-9999px!important}.ctnv-aff-dashboard-head{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:16px}.ctnv-aff-dashboard-head h2{margin:3px 0 6px;color:#fff;font-size:30px}.ctnv-aff-dashboard-head p{margin:0;color:#aeb7bd}.ctnv-aff-eyebrow{display:block;color:#5dbbdf;text-transform:uppercase;letter-spacing:.09em;font-size:11px;font-weight:800}.ctnv-aff-code-box{min-width:220px;background:#171a1d;border:1px solid #343a3f;padding:16px;border-radius:8px}.ctnv-aff-code-box span{display:block;color:#939da4;font-size:12px}.ctnv-aff-code-box strong{display:block;font-size:22px;margin:4px 0 8px;color:#fff;word-break:break-word}.ctnv-aff-code-box button,.ctnv-aff-copy-link{appearance:none;border:0;background:none;padding:0;color:#5dbbdf;cursor:pointer;font-weight:700}.ctnv-aff-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:18px 0}.ctnv-aff-cards-six{grid-template-columns:repeat(3,minmax(0,1fr))}.ctnv-aff-cards>div{background:#101214;color:#eee;border:1px solid #2a2f33;border-radius:9px;padding:17px}.ctnv-aff-cards span{display:block;color:#939da4;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.ctnv-aff-cards strong{display:block;font-size:23px;margin-top:6px;color:#fff}.ctnv-aff-panel{margin:18px 0}.ctnv-aff-panel h3{margin:3px 0 4px;color:#fff}.ctnv-aff-panel-head{display:flex;justify-content:space-between;gap:15px;margin-bottom:16px}.ctnv-aff-panel-head p{color:#aeb7bd;margin:4px 0 0}.ctnv-aff-muted{color:#aeb7bd;margin-bottom:0}.ctnv-aff-copy-row,.ctnv-aff-builder-row{display:flex;gap:9px;align-items:stretch}.ctnv-aff-copy-row input,.ctnv-aff-builder-row input{flex:1}.ctnv-aff-generated{margin-top:10px}.ctnv-aff-link-message{min-height:22px;margin-top:8px;font-size:13px}.ctnv-aff-link-message.is-success{color:#82d49a}.ctnv-aff-link-message.is-error{color:#ff8a8a}.ctnv-aff-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.ctnv-aff-resource-card{border:1px solid #30363b;background:#171a1d;border-radius:8px;padding:16px;overflow:hidden}.ctnv-aff-resource-thumb{height:150px;margin:-16px -16px 14px;background:#0a0c0d;display:flex;align-items:center;justify-content:center;overflow:hidden}.ctnv-aff-resource-thumb img{width:100%;height:100%;object-fit:cover}.ctnv-aff-resource-type{display:inline-block;color:#5dbbdf;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.ctnv-aff-resource-card h4{margin:5px 0 8px;color:#fff;font-size:17px}.ctnv-aff-resource-card p{color:#bbc2c7;font-size:14px;line-height:1.45}.ctnv-aff-resource-actions{display:flex;gap:12px;align-items:center;margin-top:13px}.ctnv-aff-empty{border:1px dashed #3a4146;padding:18px;color:#9fa8ae;border-radius:7px}.ctnv-aff-table-scroll{overflow-x:auto}.ctnv-aff-table{width:100%;border-collapse:collapse}.ctnv-aff-table th,.ctnv-aff-table td{text-align:left;border-bottom:1px solid #30363b;padding:11px 10px}.ctnv-aff-table th{color:#9fa8ae;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.ctnv-aff-table code{color:#5dbbdf}.ctnv-aff-status{display:inline-block;border-radius:999px;padding:4px 8px;font-size:12px;background:#2b3136}.ctnv-aff-status-paid,.ctnv-aff-status-approved{background:#183e25;color:#9be4b0}.ctnv-aff-status-review{background:#4a3911;color:#f2d27b}.ctnv-aff-status-reversed{background:#492020;color:#efaaaa}@media(max-width:900px){.ctnv-aff-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ctnv-aff-cards-six{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.ctnv-aff-grid,.ctnv-aff-resource-grid,.ctnv-aff-cards,.ctnv-aff-cards-six{grid-template-columns:1fr}.ctnv-aff-dashboard-head{align-items:stretch;flex-direction:column}.ctnv-aff-code-box{min-width:0}.ctnv-aff-copy-row,.ctnv-aff-builder-row{flex-direction:column}}
.ctnv-aff-panel select,.ctnv-aff-panel textarea{box-sizing:border-box;width:100%;background:#171a1d;color:#fff;border:1px solid #444c52;border-radius:5px;padding:11px}.ctnv-aff-payout-status-row{display:flex;flex-wrap:wrap;gap:8px;margin:-2px 0 16px}.ctnv-aff-payout-form p{margin:0 0 14px}.ctnv-aff-sensitive-note{background:#171a1d;border-left:3px solid #5dbbdf;padding:12px 14px;color:#b9c1c6;font-size:13px;line-height:1.45}

.ctnv-aff-rules-list{margin:18px 0 0 22px;padding:0}.ctnv-aff-rules-list li{margin:0 0 16px;line-height:1.6}.ctnv-aff-program-rules details summary{cursor:pointer}.ctnv-aff-rules-accept label{display:flex;gap:12px;align-items:flex-start;line-height:1.5;cursor:pointer}.ctnv-aff-rules-accept input[type=checkbox]{width:20px!important;height:20px;min-width:20px;flex:0 0 20px;margin:1px 0 0!important;accent-color:#5dbbdf}.ctnv-aff-rules-accept form p{margin:18px 0 0}.ctnv-aff-rules-accept .ctnv-aff-button{padding:14px 22px;font-size:13px;min-height:44px}
.ctnv-aff-panel input[type=checkbox]{width:20px!important;height:20px;min-width:20px;display:inline-block;vertical-align:middle;margin-right:8px;accent-color:#5dbbdf}.ctnv-aff-agreement-text{font-size:14px;line-height:1.65;color:#d8dde1;background:#0c0e10}.ctnv-aff-panel details summary{cursor:pointer}

.ctnv-aff-agreement-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:10px 0 0;font-size:13px}.ctnv-aff-agreement-actions a{color:#5dbbdf;text-decoration:none;font-weight:700}.ctnv-aff-review-status{color:#aeb7bd}.ctnv-aff-review-status.is-complete{color:#82d49a}.ctnv-aff-button:disabled,.ctnv-aff-button[aria-disabled=true]{opacity:.45;cursor:not-allowed;filter:none}.ctnv-aff-agreement-text:focus{outline:2px solid #5dbbdf;outline-offset:2px}@media(max-width:760px){.ctnv-aff-agreement-actions{align-items:flex-start;flex-direction:column}}

/* v1.6.7 — dense layout with improved desktop readability. Visual-only; no agreement or workflow changes. */
.ctnv-aff-wrap{max-width:1040px;margin:18px auto;font-size:14px;line-height:1.48}
.ctnv-aff-form,.ctnv-aff-panel,.ctnv-aff-dashboard-head{padding:16px;border-radius:8px}
.ctnv-aff-alert{padding:9px 12px;margin:0 0 10px;font-size:13px}
.ctnv-aff-dashboard-head{gap:16px;margin-bottom:11px}
.ctnv-aff-dashboard-head h2{margin:2px 0 4px;font-size:23px;line-height:1.15}
.ctnv-aff-dashboard-head p{font-size:13px;line-height:1.45}
.ctnv-aff-eyebrow{font-size:10px;letter-spacing:.08em}
.ctnv-aff-code-box{min-width:185px;padding:11px;border-radius:7px}
.ctnv-aff-code-box span{font-size:11px}
.ctnv-aff-code-box strong{font-size:18px;margin:3px 0 5px}
.ctnv-aff-code-box button,.ctnv-aff-copy-link{font-size:12px}
.ctnv-aff-cards{gap:9px;margin:11px 0}
.ctnv-aff-cards>div{padding:11px;border-radius:7px}
.ctnv-aff-cards span{font-size:10.5px}
.ctnv-aff-cards strong{font-size:18px;margin-top:3px}
.ctnv-aff-panel{margin:11px 0}
.ctnv-aff-panel h3{margin:2px 0 3px;font-size:16px;line-height:1.2}
.ctnv-aff-panel-head{gap:10px;margin-bottom:10px}
.ctnv-aff-panel-head p,.ctnv-aff-muted{font-size:13px;line-height:1.45}
.ctnv-aff-form label,.ctnv-aff-panel label{font-size:12.5px;margin-bottom:4px;line-height:1.4}
.ctnv-aff-form input,.ctnv-aff-form select,.ctnv-aff-form textarea,.ctnv-aff-panel input,.ctnv-aff-panel select,.ctnv-aff-panel textarea{padding:7px 8px;border-radius:4px;font-size:13px;line-height:1.4;min-height:32px}
.ctnv-aff-panel textarea,.ctnv-aff-form textarea{min-height:78px}
.ctnv-aff-button{padding:8px 13px;border-radius:4px;font-size:11.5px;line-height:1.2;min-height:32px}
.ctnv-aff-button-small{padding:6px 9px;font-size:11px;min-height:28px}
.ctnv-aff-copy-row,.ctnv-aff-builder-row{gap:7px}
.ctnv-aff-generated{margin-top:7px}
.ctnv-aff-link-message{min-height:16px;margin-top:5px;font-size:12px}
.ctnv-aff-resource-grid{gap:9px}
.ctnv-aff-resource-card{padding:11px;border-radius:7px}
.ctnv-aff-resource-thumb{height:100px;margin:-11px -11px 9px}
.ctnv-aff-resource-type{font-size:10px}
.ctnv-aff-resource-card h4{margin:4px 0 5px;font-size:15px;line-height:1.25}
.ctnv-aff-resource-card p{font-size:13px;line-height:1.45;margin:6px 0}
.ctnv-aff-resource-actions{gap:9px;margin-top:8px}
.ctnv-aff-empty{padding:11px;font-size:13px}
.ctnv-aff-table th,.ctnv-aff-table td{padding:7px 7px;font-size:12.5px;line-height:1.4}
.ctnv-aff-table th{font-size:10.5px}
.ctnv-aff-status{padding:3px 6px;font-size:10.5px}
.ctnv-aff-payout-status-row{gap:6px;margin:-1px 0 10px}
.ctnv-aff-payout-form p{margin:0 0 9px}
.ctnv-aff-sensitive-note{padding:8px 10px;font-size:12.5px;line-height:1.45}
.ctnv-aff-rules-list{margin:11px 0 0 18px}
.ctnv-aff-rules-list li{margin:0 0 9px;line-height:1.45}
.ctnv-aff-rules-accept label{gap:8px;line-height:1.45;font-size:13px}
.ctnv-aff-rules-accept input[type=checkbox],.ctnv-aff-panel input[type=checkbox]{width:16px!important;height:16px;min-width:16px;flex-basis:16px;margin-top:1px!important}
.ctnv-aff-rules-accept form p{margin:11px 0 0}
.ctnv-aff-rules-accept .ctnv-aff-button{padding:8px 13px;font-size:11.5px;min-height:32px}
.ctnv-aff-agreement-text{font-size:13px!important;line-height:1.52!important;max-height:440px!important;padding:12px!important}
.ctnv-aff-agreement-actions{gap:10px;margin:7px 0 0;font-size:12px}
.ctnv-aff-agreement-actions a{font-size:12px}

@media(max-width:760px){
  .ctnv-aff-wrap{margin:12px auto;font-size:13px}
  .ctnv-aff-form,.ctnv-aff-panel,.ctnv-aff-dashboard-head{padding:14px}
  .ctnv-aff-dashboard-head h2{font-size:22px}
  .ctnv-aff-panel h3{font-size:16px}
  .ctnv-aff-form label,.ctnv-aff-panel label{font-size:12px}
  .ctnv-aff-form input,.ctnv-aff-form select,.ctnv-aff-form textarea,.ctnv-aff-panel input,.ctnv-aff-panel select,.ctnv-aff-panel textarea{font-size:14px;min-height:40px;padding:9px 10px}
  .ctnv-aff-button{font-size:12px;min-height:38px;padding:9px 14px}
  .ctnv-aff-resource-thumb{height:135px}
  .ctnv-aff-resource-card p{font-size:13px}
  .ctnv-aff-table th,.ctnv-aff-table td{font-size:12px;padding:8px 7px}
  .ctnv-aff-agreement-text{font-size:12.5px!important;line-height:1.5!important;max-height:460px!important}
  .ctnv-aff-rules-accept input[type=checkbox],.ctnv-aff-panel input[type=checkbox]{width:19px!important;height:19px;min-width:19px;flex-basis:19px}
}


/* v1.6.8 — readability correction at 100% desktop zoom. Keep compact spacing; raise undersized utility/body text only. */
@media(min-width:761px){
  .ctnv-aff-eyebrow{font-size:11.5px}
  .ctnv-aff-code-box span{font-size:12.5px}
  .ctnv-aff-code-box button,.ctnv-aff-copy-link{font-size:12.5px}
  .ctnv-aff-cards span{font-size:12px;letter-spacing:.05em}
  .ctnv-aff-panel-head p,.ctnv-aff-muted{font-size:13.5px}
  .ctnv-aff-form label,.ctnv-aff-panel label{font-size:13.5px}
  .ctnv-aff-form input,.ctnv-aff-form select,.ctnv-aff-form textarea,
  .ctnv-aff-panel input,.ctnv-aff-panel select,.ctnv-aff-panel textarea{font-size:13.5px}
  .ctnv-aff-button{font-size:12.5px}
  .ctnv-aff-button-small{font-size:12px}
  .ctnv-aff-link-message{font-size:13px}
  .ctnv-aff-resource-type{font-size:11.5px}
  .ctnv-aff-resource-card p{font-size:13.5px}
  .ctnv-aff-empty{font-size:13.5px}
  .ctnv-aff-table th,.ctnv-aff-table td{font-size:13.5px}
  .ctnv-aff-table th{font-size:12.5px}
  .ctnv-aff-status{font-size:11.5px}
  .ctnv-aff-sensitive-note{font-size:13.5px;line-height:1.5}
  .ctnv-aff-rules-accept label{font-size:13.5px}
  .ctnv-aff-agreement-actions,.ctnv-aff-agreement-actions a{font-size:12.5px}
}

/* v1.6.9 — targeted 100% desktop font-size increase for the specific utility areas reviewed by CTNV. Layout dimensions remain compact. */
@media(min-width:761px){
  /* Dashboard stat cards */
  .ctnv-aff-cards span{font-size:14px;line-height:1.35;letter-spacing:.05em}
  .ctnv-aff-cards strong{font-size:20px;line-height:1.25}

  /* Referral/link builder fields and actions */
  .ctnv-aff-copy-row input,.ctnv-aff-builder-row input{font-size:15px;line-height:1.4}
  .ctnv-aff-copy-row .ctnv-aff-button,.ctnv-aff-builder-row .ctnv-aff-button{font-size:14px}

  /* Payout settings labels, values and helper copy */
  .ctnv-aff-payout-form label{font-size:15px;line-height:1.4}
  .ctnv-aff-payout-form input,.ctnv-aff-payout-form select,.ctnv-aff-payout-form textarea{font-size:15px;line-height:1.45}
  .ctnv-aff-payout-form p{font-size:15px;line-height:1.5}
  .ctnv-aff-sensitive-note{font-size:15px;line-height:1.55}
  .ctnv-aff-payout-status-row .ctnv-aff-status{font-size:12.5px}

  /* Referral and payout history tables */
  .ctnv-aff-table th{font-size:14px;line-height:1.35}
  .ctnv-aff-table td{font-size:15px;line-height:1.45}
  .ctnv-aff-table .ctnv-aff-status{font-size:12.5px;line-height:1.25}

  /* Utility buttons shown in these sections */
  .ctnv-aff-panel .ctnv-aff-button{font-size:14px}
}

/* v1.6.10 — contrast hierarchy refinement. Brighten secondary copy and data while preserving the CTNV black/cyan palette and compact layout. */
@media(min-width:761px){
  /* Primary data stays bright and immediately scannable. */
  .ctnv-aff-cards strong,
  .ctnv-aff-table td,
  .ctnv-aff-code-box strong{color:#f7f9fa}

  /* Labels / table headers: clearly secondary, but no longer washed out. */
  .ctnv-aff-cards span,
  .ctnv-aff-table th,
  .ctnv-aff-code-box span{color:#b8c2c9}

  /* General descriptive and helper copy. */
  .ctnv-aff-dashboard-head p,
  .ctnv-aff-panel-head p,
  .ctnv-aff-muted,
  .ctnv-aff-resource-card p,
  .ctnv-aff-empty,
  .ctnv-aff-review-status{color:#c6ced3}

  /* Important labels inside muted copy should remain visually distinct. */
  .ctnv-aff-muted strong{color:#f0f3f5}

  /* Form helper text and safety copy. */
  .ctnv-aff-payout-form small,
  .ctnv-aff-form small,
  .ctnv-aff-panel small{color:#c3ccd1}
  .ctnv-aff-sensitive-note{color:#cbd2d6}
  .ctnv-aff-sensitive-note strong{color:#eef2f4}

  /* Inputs: user-entered / generated values should read as actual data. */
  .ctnv-aff-form input,
  .ctnv-aff-form select,
  .ctnv-aff-form textarea,
  .ctnv-aff-panel input,
  .ctnv-aff-panel select,
  .ctnv-aff-panel textarea{color:#f4f7f8}
  .ctnv-aff-form input::placeholder,
  .ctnv-aff-form textarea::placeholder,
  .ctnv-aff-panel input::placeholder,
  .ctnv-aff-panel textarea::placeholder{color:#8f999f;opacity:1}

  /* Pending commission text is secondary, but still easy to read in a table. */
  .ctnv-aff-table td .ctnv-aff-muted{color:#c8d0d5}
}

/* v1.6.12 — T&E readability and downloadable addendum. */
.ctnv-aff-te-title{color:#f7f9fa!important}
.ctnv-aff-te-meta{color:#e1e7ea!important;margin-bottom:0}
.ctnv-aff-te-meta strong,.ctnv-aff-te-copy strong,.ctnv-aff-te-sign summary strong{color:#fff!important}
.ctnv-aff-te-copy{color:#e5eaed!important;line-height:1.55}
.ctnv-aff-te-sign summary{color:#f4f7f8!important}
.ctnv-aff-te-sign .ctnv-aff-agreement-text{color:#e5eaed!important;border-color:#596168!important}
@media(min-width:761px){
  .ctnv-aff-te-title{font-size:18px!important}
  .ctnv-aff-te-meta,.ctnv-aff-te-copy{font-size:15px!important}
  .ctnv-aff-te-sign summary{font-size:14px!important}
}

/* v1.6.15 — T&E contrast hierarchy. Important labels are bright; long legal copy stays softer but readable. */
.ctnv-aff-te-title{color:#f7f9fa!important}
.ctnv-aff-te-meta{color:#d3dade!important}
.ctnv-aff-te-meta strong{color:#f1f4f5!important}
.ctnv-aff-te-copy{color:#ccd4d8!important;line-height:1.55}
.ctnv-aff-te-copy strong{color:#f3f5f6!important}
.ctnv-aff-te-sign summary{color:#e2e7ea!important}
.ctnv-aff-te-sign summary strong{color:#f4f6f7!important}
.ctnv-aff-te-sign .ctnv-aff-agreement-text{
  color:#c8d0d4!important;
  border-color:#465057!important;
  background:#0b0d0e!important;
}
.ctnv-aff-te-doc-title{color:#f4f7f8!important;font-weight:800;letter-spacing:.035em}
.ctnv-aff-te-doc-intro{color:#d3dadd!important}
.ctnv-aff-te-clause-label{color:#f2f5f6!important;font-weight:800}
.ctnv-aff-te-clause-body{color:#c9d1d5!important}
.ctnv-aff-te-doc-copy{color:#c9d1d5!important}
.ctnv-aff-te-sign label{color:#e0e5e8!important}
.ctnv-aff-te-sign .ctnv-aff-agreement-actions{color:#bcc5ca!important}
.ctnv-aff-te-sign .ctnv-aff-agreement-actions a{color:#5dbbdf!important}

/* v1.6.18 — T&E color-only readability pass. Preserve CTNV typography; soften long copy and keep hierarchy clear. */
.ctnv-aff-te-title{color:#f5f7f8!important}
.ctnv-aff-te-meta{color:#c2cbd0!important}
.ctnv-aff-te-meta strong{color:#edf1f3!important}
.ctnv-aff-te-copy{color:#b8c1c6!important}
.ctnv-aff-te-copy strong{color:#e7ecee!important}
.ctnv-aff-te-sign summary{color:#d2d9dd!important}
.ctnv-aff-te-sign summary strong{color:#eef2f4!important}
.ctnv-aff-te-sign .ctnv-aff-agreement-text{
  color:#aeb8bd!important;
  border-color:#40494f!important;
  background:#0b0d0e!important;
}
.ctnv-aff-te-doc-title{color:#e8edef!important}
.ctnv-aff-te-doc-intro{color:#b8c1c6!important}
.ctnv-aff-te-clause-label{color:#dde3e6!important}
.ctnv-aff-te-clause-body{color:#aeb8bd!important}
.ctnv-aff-te-doc-copy{color:#aeb8bd!important}
.ctnv-aff-te-sign label{color:#d2d9dd!important}
.ctnv-aff-te-sign .ctnv-aff-agreement-actions{color:#9faab0!important}
.ctnv-aff-te-sign .ctnv-aff-agreement-actions a{color:#5dbbdf!important}


/* v1.6.19 — force T&E back to CTNV/site typography; COLOR remains the only visual adjustment. */
.ctnv-aff-te-title,
.ctnv-aff-te-meta,
.ctnv-aff-te-meta *,
.ctnv-aff-te-copy,
.ctnv-aff-te-copy *,
.ctnv-aff-te-sign,
.ctnv-aff-te-sign summary,
.ctnv-aff-te-sign summary *,
.ctnv-aff-te-sign .ctnv-aff-agreement-text,
.ctnv-aff-te-sign .ctnv-aff-agreement-text *,
.ctnv-aff-te-sign label,
.ctnv-aff-te-sign input,
.ctnv-aff-te-sign button,
.ctnv-aff-te-sign a {
  font-family: inherit !important;
}


/* v1.6.20 — T&E color-only legal readability refinement. No typography, sizing, spacing, layout, or wording changes. */
.ctnv-aff-te-sign .ctnv-aff-agreement-text{
  color:#bbc4c9!important;
}
.ctnv-aff-te-doc-title{color:#eef2f4!important}
.ctnv-aff-te-doc-intro{color:#bbc4c9!important}
.ctnv-aff-te-clause-label{color:#f1f4f5!important}
.ctnv-aff-te-clause-body{color:#bbc4c9!important}
.ctnv-aff-te-doc-copy{color:#bbc4c9!important}
.ctnv-aff-te-sign label{color:#dce2e5!important}

/* v1.6.34 — simplify affiliate portal, fix stat-card wrapping, and harden action-button labels. */
.ctnv-aff-cards{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
.ctnv-aff-cards>div{
  min-width:0;
  padding:14px 16px!important;
}
.ctnv-aff-cards>div>span{
  display:block!important;
  color:#b8c2c9!important;
  font-size:12.5px!important;
  line-height:1.25!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
.ctnv-aff-cards>div>strong{
  display:block!important;
  color:#f7f9fa!important;
  font-size:22px!important;
  line-height:1.15!important;
  margin-top:7px!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
/* wc_price() contains nested spans. Do not let the stat-label rule style them. */
.ctnv-aff-cards>div>strong span,
.ctnv-aff-cards>div>strong bdi,
.ctnv-aff-cards>div>strong .woocommerce-Price-amount,
.ctnv-aff-cards>div>strong .woocommerce-Price-currencySymbol{
  display:inline!important;
  color:inherit!important;
  font:inherit!important;
  line-height:inherit!important;
  letter-spacing:normal!important;
  text-transform:none!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* My Account has a narrower content column; use a clean 2x2 stat layout there. */
.woocommerce-MyAccount-content .ctnv-aff-cards{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

/* Reduce visual noise: secondary portal areas become compact drawers. */
.ctnv-aff-section{
  margin:12px 0;
  background:#101214;
  border:1px solid #2a2f33;
  border-radius:8px;
  overflow:hidden;
}
.ctnv-aff-section>summary{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:15px 46px 15px 16px;
  cursor:pointer;
  list-style:none;
  color:#f7f9fa;
  user-select:none;
}
.ctnv-aff-section>summary::-webkit-details-marker{display:none}
.ctnv-aff-section>summary::after{
  content:'+';
  position:absolute;
  right:17px;
  top:50%;
  transform:translateY(-50%);
  color:#5dbbdf;
  font-size:24px;
  line-height:1;
  font-weight:500;
}
.ctnv-aff-section[open]>summary::after{content:'−'}
.ctnv-aff-section>summary>span{display:block;min-width:0}
.ctnv-aff-section>summary strong{
  display:block;
  margin-top:2px;
  color:#f7f9fa;
  font-size:17px;
  line-height:1.2;
}
.ctnv-aff-section>summary small{
  display:block;
  margin-top:4px;
  color:#aeb7bd;
  font-size:12.5px;
  line-height:1.4;
}
.ctnv-aff-section[open]>summary{border-bottom:1px solid #2a2f33}
.ctnv-aff-section-body{padding:0 16px 4px}
.ctnv-aff-section-body>.ctnv-aff-panel{
  margin:0!important;
  padding:16px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.ctnv-aff-section-body>.ctnv-aff-panel+.ctnv-aff-panel{
  border-top:1px solid #2a2f33!important;
}
.ctnv-aff-primary-panel{margin:12px 0!important}

/* Keep CTNV action labels visible even when theme/WooCommerce link rules are aggressive. */
.ctnv-aff-dashboard a.ctnv-aff-button,
.ctnv-aff-dashboard button.ctnv-aff-button,
.woocommerce-account .ctnv-aff-dashboard a.ctnv-aff-button,
.woocommerce-account .ctnv-aff-dashboard button.ctnv-aff-button{
  color:#07161c!important;
  -webkit-text-fill-color:#07161c!important;
  text-indent:0!important;
  opacity:1!important;
  visibility:visible!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:800!important;
  text-decoration:none!important;
}

@media(max-width:760px){
  .ctnv-aff-cards,
  .woocommerce-MyAccount-content .ctnv-aff-cards{
    grid-template-columns:1fr 1fr!important;
  }
  .ctnv-aff-cards>div>span{font-size:11.5px!important}
  .ctnv-aff-cards>div>strong{font-size:19px!important}
  .ctnv-aff-section>summary{padding:14px 42px 14px 14px}
  .ctnv-aff-section>summary strong{font-size:16px}
  .ctnv-aff-section>summary small{font-size:12px}
  .ctnv-aff-section-body{padding:0 14px 3px}
}

@media(max-width:430px){
  .ctnv-aff-cards,
  .woocommerce-MyAccount-content .ctnv-aff-cards{
    grid-template-columns:1fr!important;
  }
}

/* v1.6.35 — affiliate-facing cleanup: one-line welcome, compact resources, and neutral commission-source wording. */
.ctnv-aff-dashboard-head h2{
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* Marketing resources should be useful without dominating the portal. */
.ctnv-aff-resource-grid{gap:10px!important}
.ctnv-aff-resource-card{padding:11px!important}
.ctnv-aff-resource-thumb{height:105px!important;margin:-11px -11px 10px!important}
.ctnv-aff-resource-type{font-size:9.5px!important;line-height:1.2!important}
.ctnv-aff-resource-card h4{margin:4px 0 5px!important;font-size:13px!important;line-height:1.25!important}
.ctnv-aff-resource-card p{margin:5px 0!important;font-size:11.25px!important;line-height:1.4!important}
.ctnv-aff-resource-actions{gap:8px!important;margin-top:8px!important}
.ctnv-aff-resource-card .ctnv-aff-button-small,
.ctnv-aff-resource-card .ctnv-aff-copy-link{font-size:10.5px!important;line-height:1.2!important}

/* The WooCommerce account column is narrow. Give the affiliate name the full row,
   then make the referral-code box a compact single-line utility strip. */
.woocommerce-MyAccount-content .ctnv-aff-dashboard-head{
  display:block!important;
  padding:16px!important;
}
.woocommerce-MyAccount-content .ctnv-aff-dashboard-head h2{
  width:100%!important;
  max-width:100%!important;
  font-size:20px!important;
  line-height:1.15!important;
  letter-spacing:.035em!important;
  white-space:nowrap!important;
}
.woocommerce-MyAccount-content .ctnv-aff-dashboard-head p{font-size:12px!important;line-height:1.45!important}
.woocommerce-MyAccount-content .ctnv-aff-code-box{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
  width:100%!important;
  margin-top:11px!important;
  padding:8px 10px!important;
}
.woocommerce-MyAccount-content .ctnv-aff-code-box span,
.woocommerce-MyAccount-content .ctnv-aff-code-box strong,
.woocommerce-MyAccount-content .ctnv-aff-code-box button{margin:0!important}
.woocommerce-MyAccount-content .ctnv-aff-code-box span{font-size:10px!important;white-space:nowrap!important}
.woocommerce-MyAccount-content .ctnv-aff-code-box strong{
  font-size:14px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.woocommerce-MyAccount-content .ctnv-aff-code-box button{font-size:10.5px!important;white-space:nowrap!important}

/* Slightly reduce dense secondary portal copy inside My Account. */
.woocommerce-MyAccount-content .ctnv-aff-section-body .ctnv-aff-panel-head p,
.woocommerce-MyAccount-content .ctnv-aff-section-body .ctnv-aff-muted,
.woocommerce-MyAccount-content .ctnv-aff-section-body .ctnv-aff-form label,
.woocommerce-MyAccount-content .ctnv-aff-section-body .ctnv-aff-panel label{
  font-size:12px!important;
  line-height:1.45!important;
}

/* v1.6.36 — stronger affiliate-portal text hierarchy. Theme-safe color overrides only. */
/* Primary headings / important values stay bright. */
.woocommerce-account .ctnv-aff-dashboard h2,
.woocommerce-account .ctnv-aff-dashboard h3,
.woocommerce-account .ctnv-aff-dashboard h4,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-code-box strong,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-cards>div>strong,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-table td{
  color:#eef2f4!important;
}

/* CTNV navigation / labels / actions stay cyan. */
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-eyebrow,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-resource-type,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-copy-link,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-agreement-actions a{
  color:#5dbbdf!important;
}

/* Normal descriptive copy: intentionally softer than headings and data. */
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-dashboard-head p,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-panel-head p,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-muted,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-empty,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-section>summary small,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-review-status,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-sensitive-note,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-payout-form small,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-rules-list,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-rules-list li{
  color:#a7b0b5!important;
}

/* Form labels are readable but should not compete with values/headings. */
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-form label,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-panel label,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-payout-form label{
  color:#c5ccd0!important;
}

/* Marketing Resources: create a clear title/body hierarchy instead of all-white text. */
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-resource-card h4{
  color:#e9edef!important;
}
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-resource-card p{
  color:#969fa5!important;
}
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-resource-card .ctnv-aff-resource-actions{
  color:#a7b0b5!important;
}

/* T&E / program long-form copy stays softer while important labels remain brighter. */
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-te-meta,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-te-copy,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-te-doc-intro,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-te-clause-body,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-te-doc-copy,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-te-sign .ctnv-aff-agreement-text{
  color:#a7b0b5!important;
}
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-te-title,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-te-meta strong,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-te-copy strong,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-te-clause-label,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-te-doc-title{
  color:#e8edef!important;
}


/* v1.6.37 — restore CTNV blue for primary affiliate portal headings. */
.woocommerce-account .ctnv-aff-dashboard h2,
.woocommerce-account .ctnv-aff-dashboard h3{
  color:#5DBBDF!important;
  -webkit-text-fill-color:#5DBBDF!important;
}

/* Resource/card titles remain neutral so cyan is reserved for true section headings. */
.woocommerce-account .ctnv-aff-dashboard h4{
  color:#e9edef!important;
  -webkit-text-fill-color:#e9edef!important;
}


/* v1.6.43 — public Affiliate & Partner directory card redesign. */
.ctnv-aff-directory{max-width:1180px;margin:38px auto 60px;color:#e9edef}
.ctnv-aff-directory *{box-sizing:border-box}
.ctnv-aff-directory-section{margin:0 0 54px}
.ctnv-aff-directory-heading{max-width:820px;margin:0 0 24px}
.ctnv-aff-directory-heading>span{display:block;color:#5DBBDF;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px}
.ctnv-aff-directory-heading h2{margin:0 0 8px!important;color:#5DBBDF!important;-webkit-text-fill-color:#5DBBDF!important;font-size:34px!important;line-height:1.12!important;letter-spacing:.04em!important}
.ctnv-aff-directory-heading p{margin:0;color:#aeb7bd;font-size:14px;line-height:1.6}
.ctnv-aff-directory-grid{display:grid;gap:20px;align-items:stretch}
.ctnv-aff-directory-grid.ctnv-aff-directory-count-1{grid-template-columns:minmax(0,560px)}
.ctnv-aff-directory-grid.ctnv-aff-directory-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ctnv-aff-directory-grid.ctnv-aff-directory-count-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ctnv-aff-directory-grid-partners.ctnv-aff-directory-count-1{grid-template-columns:minmax(0,720px)}
.ctnv-aff-directory-card{display:flex;flex-direction:column;height:100%;min-width:0;background:#0b1114;border:1px solid rgba(93,187,223,.55);border-radius:6px;overflow:hidden;box-shadow:none}
.ctnv-aff-directory-card.is-partner{border-color:#5DBBDF}
.ctnv-aff-directory-media{position:relative;width:100%;aspect-ratio:16/9;background:#080c0e;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid rgba(93,187,223,.35)}
.ctnv-aff-directory-card.is-partner .ctnv-aff-directory-media{aspect-ratio:16/8.5}
.ctnv-aff-directory-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.ctnv-aff-directory-monogram{display:flex;align-items:center;justify-content:center;width:96px;height:96px;border:1px solid rgba(93,187,223,.55);border-radius:50%;color:#5DBBDF;font-size:30px;font-weight:800;letter-spacing:.08em}
.ctnv-aff-directory-card-body{padding:20px;display:flex;flex:1;flex-direction:column;min-width:0}
.ctnv-aff-directory-type{display:block;color:#5DBBDF;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px}
.ctnv-aff-directory-card h3{margin:0 0 8px!important;color:#eef2f4!important;-webkit-text-fill-color:#eef2f4!important;font-size:22px!important;line-height:1.18!important;letter-spacing:.04em!important;text-transform:uppercase}
.ctnv-aff-directory-card.is-partner h3{font-size:25px!important}
.ctnv-aff-directory-location{margin:0 0 13px;color:#8e989e;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.ctnv-aff-directory-card p{margin:0 0 18px;color:#b1b9be;font-size:13px;line-height:1.65}
.ctnv-aff-directory-socials{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 16px}
.ctnv-aff-directory-socials a,.ctnv-aff-directory-link{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:6px 9px;border:1px solid rgba(93,187,223,.5);border-radius:3px;color:#5DBBDF!important;-webkit-text-fill-color:#5DBBDF!important;text-decoration:none!important;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;line-height:1.15}
.ctnv-aff-directory-socials a:hover,.ctnv-aff-directory-link:hover{background:rgba(93,187,223,.08);border-color:#5DBBDF}
.ctnv-aff-directory-actions{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:2px}
.ctnv-aff-directory-actions a{text-decoration:none!important;font-weight:800;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.ctnv-aff-directory-link{align-self:flex-start}
.ctnv-aff-directory-shop{display:flex;width:100%;min-height:42px;align-items:center;justify-content:center;background:transparent;border:1px solid #5DBBDF;color:#5DBBDF!important;-webkit-text-fill-color:#5DBBDF!important;border-radius:3px;padding:10px 14px;line-height:1.2;text-align:center}
.ctnv-aff-directory-shop:hover{background:#5DBBDF;color:#07161c!important;-webkit-text-fill-color:#07161c!important}
.ctnv-aff-directory-empty{max-width:760px;margin:40px auto;padding:22px;border:1px dashed #394249;border-radius:8px;color:#aeb7bd;text-align:center;background:#101214}
@media(max-width:980px){
  .ctnv-aff-directory-grid.ctnv-aff-directory-count-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ctnv-aff-directory-grid.ctnv-aff-directory-count-1,.ctnv-aff-directory-grid-partners.ctnv-aff-directory-count-1{grid-template-columns:minmax(0,1fr);max-width:620px}
}
@media(max-width:720px){
  .ctnv-aff-directory{margin:26px auto 40px}
  .ctnv-aff-directory-grid.ctnv-aff-directory-count-1,.ctnv-aff-directory-grid.ctnv-aff-directory-count-2,.ctnv-aff-directory-grid.ctnv-aff-directory-count-3,.ctnv-aff-directory-grid-partners.ctnv-aff-directory-count-1{grid-template-columns:1fr;max-width:none}
  .ctnv-aff-directory-heading h2{font-size:28px!important}
  .ctnv-aff-directory-card-body{padding:17px}
  .ctnv-aff-directory-card h3,.ctnv-aff-directory-card.is-partner h3{font-size:20px!important}
  .ctnv-aff-directory-media,.ctnv-aff-directory-card.is-partner .ctnv-aff-directory-media{aspect-ratio:16/9}
}
@media(max-width:480px){
  .ctnv-aff-directory-grid{gap:16px}
  .ctnv-aff-directory-socials a,.ctnv-aff-directory-link{font-size:9px}
}

/* v1.6.40 — affiliate/partner self-service public profile workflow. */
.ctnv-aff-profile-status-row{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.ctnv-aff-public-profile-form input[type="file"]{padding:9px;background:#0b0d0f;border:1px solid #323a40;color:#b8c0c5;border-radius:4px;width:100%}
.ctnv-aff-public-profile-form textarea{width:100%;box-sizing:border-box}
.ctnv-aff-profile-current-image{display:flex;align-items:center;gap:10px;margin-top:9px;color:#9da6ab}
.ctnv-aff-profile-current-image img{width:58px;height:58px;object-fit:cover;border-radius:6px;border:1px solid #343d42}
.ctnv-aff-profile-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:14px}
.ctnv-aff-profile-actions .ctnv-aff-copy-link{background:none;border:0;padding:0;cursor:pointer;font:inherit}
@media(max-width:720px){.ctnv-aff-profile-actions{align-items:flex-start;flex-direction:column}}

/* v1.6.45 - private Affiliate Dashboard shipping address */
.ctnv-aff-shipping-preview{margin:0 0 12px;padding:11px 13px;border:1px solid #30363b;border-radius:6px;background:#171a1d;color:#dce2e6;font-size:13px;line-height:1.5}

/* v1.6.49 — improve pre-sign Program Terms at a Glance readability. */
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-agreement-summary{
  background:#0d1114!important;
  border-color:#29434e!important;
  color:#aeb7bd!important;
}
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-agreement-summary h4{
  color:#5DBBDF!important;
  -webkit-text-fill-color:#5DBBDF!important;
}
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-agreement-summary ul,
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-agreement-summary li{
  color:#aeb7bd!important;
}
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-agreement-summary li{
  line-height:1.65!important;
  margin-bottom:10px!important;
}
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-agreement-summary li:last-child{
  margin-bottom:0!important;
}
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-agreement-summary strong{
  color:#e7edf0!important;
  -webkit-text-fill-color:#e7edf0!important;
}
.woocommerce-account .ctnv-aff-dashboard .ctnv-aff-agreement-summary li::marker{
  color:#5DBBDF!important;
}

