/* Public retailer options on the four marked reference cards */
.aff-retailers{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line,#dfe2d7);display:grid;gap:8px}
.aff-retailers-label{font-size:.7rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase;color:var(--moss,#526d4b)}
.aff-option{display:grid;gap:2px}
.aff-option small{font-size:.74rem;color:#7a8378}
.aff-link{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-radius:12px;border:1px solid #b8c2b4;color:var(--forest,#21382c);background:var(--paper,#fffdf7);font-weight:800;font-size:.86rem;text-decoration:none}
a.aff-link:hover{background:var(--sage,#dfe7d6)}
a.aff-link:focus-visible{outline:3px solid rgba(185,119,82,.58);outline-offset:2px}
.aff-link.is-pending{border-style:dashed;color:#8a9288;background:transparent;cursor:default}
.aff-disclosure{margin-top:18px;padding:14px 16px;border-radius:14px;background:var(--paper,#fffdf7);border:1px solid var(--line,#dfe2d7);border-left:4px solid var(--clay,#b97752);font-size:.9rem;color:var(--ink,#253129)}
.aff-amazon-required{display:block;margin-top:6px;font-weight:800}

/* Owner editor on /merchant */
.aff-admin{margin:28px 0;padding:26px;border:1px solid var(--line);border-radius:22px;background:var(--paper);box-shadow:var(--shadow)}
.aff-admin-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.aff-admin-head h2{margin:4px 0 8px;font:600 30px/1.1 "Newsreader",Georgia,serif;color:var(--forest)}
.aff-admin-head p{margin:0;color:var(--muted);max-width:720px}
.aff-admin-rules{margin:16px 0;padding:14px 16px 14px 32px;border-radius:14px;background:var(--sage);font-size:13px;display:grid;gap:4px}
.aff-admin-rules a{color:var(--forest);font-weight:700}
.aff-admin-list{display:grid;gap:16px}
.aff-admin-empty{color:var(--muted)}
.aff-admin-card{border:1px solid var(--line);border-radius:18px;padding:18px;background:var(--cream)}
.aff-admin-card-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;flex-wrap:wrap}
.aff-admin-card-head h3{margin:0 0 2px;font-size:17px;color:var(--forest)}
.aff-admin-ref{font-size:12px;color:var(--moss)}
.aff-admin-meta{font:500 11px/1.4 "DM Mono",monospace;color:var(--muted)}
.aff-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.aff-admin-retailer{border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:0;background:var(--paper);display:grid;gap:7px;min-width:0}
.aff-admin-retailer legend{padding:0 6px;font-weight:800;color:var(--forest)}
.aff-admin-retailer label{font-size:12px;font-weight:700}
.aff-admin-retailer input[type=url]{width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:#fffefa;font:13px "DM Mono",monospace}
.aff-admin-check{display:flex;gap:8px;align-items:flex-start;font-weight:600 !important;color:var(--ink)}
.aff-admin-check input{margin-top:3px;accent-color:var(--forest)}
.aff-admin-pill{justify-self:start;font-size:11px;font-weight:800;padding:3px 9px;border-radius:999px;background:#ece9df;color:var(--muted)}
.aff-admin-pill.on{background:var(--sage);color:var(--green)}
.aff-admin-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:14px}
.aff-admin-result{margin:0;font-size:13px;font-weight:700}
.aff-admin-result.success{color:var(--green)}
.aff-admin-result.error{color:var(--red)}
.aff-admin-result.info{color:var(--muted)}
@media (max-width:760px){.aff-admin{padding:18px}.aff-admin-head{flex-direction:column}.aff-admin-grid{grid-template-columns:1fr}}
