
.sample-badge{display:inline-block;background:var(--banner);color:var(--banner-text);font-size:.72rem;font-weight:700;letter-spacing:.04em;padding:.2rem .55rem;border-radius:999px;margin-bottom:.6rem}
.criteria{display:flex;flex-wrap:wrap;gap:.4rem;margin:.8rem 0 0;padding:0;list-style:none}
.criteria li{background:var(--surface2);border:1px solid var(--border);border-radius:999px;padding:.3rem .7rem;font-size:.85rem;color:var(--text)}
.verified{color:var(--ok);font-weight:600}
.card-photo{position:relative}
.fav-btn{position:absolute;top:.6rem;right:.6rem;width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:rgba(12,16,22,.78);color:var(--text);font-size:1.45rem;line-height:1;cursor:pointer}
.is-fav .fav-btn{color:#ff5a7a;border-color:#ff5a7a;background:rgba(40,10,18,.85)}
.is-fav{outline:2px solid #ff5a7a;outline-offset:-2px}
.rebate-line{color:var(--muted);font-size:.92rem;margin:1.2rem 0 0;text-align:center}
.cta-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.2rem;margin:1.5rem 0;text-align:center}
.cta-row{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:.8rem}
.cta-row a{display:flex;align-items:center;justify-content:center;flex:1 1 180px;max-width:280px;text-decoration:none;text-align:center}
.track-note{color:var(--muted);font-size:.78rem;text-align:center;margin:.8rem 0 0}
.site-footer .trec-links a{color:var(--accent)}
.validated{color:var(--ok);font-size:.78rem;margin:.1rem 0 .5rem}
.fee-bd{width:100%;border-collapse:collapse;font-size:.85rem;margin:.2rem 0 .4rem}.fee-bd td{padding:.22rem 0;border-bottom:1px dashed var(--border);color:var(--muted)}.fee-bd td:last-child{text-align:right;color:var(--text)}
.fee-bd .bd-total td{border-bottom:0;border-top:1px solid var(--border);font-weight:700;color:var(--text)}.bd-na{font-style:italic}
.quote-thumb{display:flex;align-items:center;gap:.5rem;margin:.3rem 0 .6rem;color:var(--accent);font-size:.82rem;text-decoration:none}.quote-thumb img{width:56px;height:40px;object-fit:cover;border:1px solid var(--border);border-radius:6px}
.searching,.no-match{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem;text-align:center;margin:1rem 0}
.spinner{width:42px;height:42px;margin:0 auto .8rem;border-radius:50%;border:4px solid var(--accent-soft);border-top-color:var(--accent);animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.match-tag{display:inline-block;margin:.3rem .3rem 0 0;font-size:.72rem;font-weight:700;padding:.15rem .5rem;border-radius:999px;background:var(--accent-soft);color:var(--text)}
.match-tag.warn{background:var(--banner);color:var(--banner-text)}
.photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;aspect-ratio:16/10;background:linear-gradient(135deg,var(--surface2),var(--accent-soft));font-weight:700;font-size:1.1rem;color:var(--text);text-align:center;padding:1rem}
.photo-placeholder small{font-weight:500;color:var(--muted);font-size:.8rem;margin-top:.3rem}

/* I1-FIX 10/18: "Why this one" high contrast: #1f2937 on #fff = 14.68:1 (WCAG AAA). */
.why-line{margin:.5rem 0 .2rem;padding:.4rem .65rem;background:#fff;color:#1f2937;border:1px solid #d1d5db;border-left:4px solid #15803d;border-radius:8px;font-size:.88rem;line-height:1.35;font-weight:500}

.hero .sub.rebate-note{text-align:left;font-size:inherit;color:inherit;opacity:1}
.qualify-box{background:#18212d;border:1px solid #273447;border-left:3px solid #3b9eff;border-radius:10px;padding:.7rem .9rem;margin:.6rem 0 .9rem;color:#f2f5f8;font-size:1rem;line-height:1.45;text-align:left}.qualify-box p{margin:.25rem 0}.qualify-box .qualify-h{font-weight:700;margin-top:0}
.rebate-card{background:#1f1a0e;border:2px solid #e0a82e;border-radius:12px;padding:.8rem .95rem;margin:.8rem 0 1rem;text-align:left}.rebate-pill{display:inline-block;background:#e0a82e;color:#1a1300;font-weight:800;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:.2rem .6rem}.rebate-main{color:#fff;font-weight:700;font-size:1.05rem;line-height:1.4;margin:.5rem 0 .4rem}.rebate-card .qualify-box{background:transparent;border:0;border-top:1px solid #4a3d1c;border-radius:0;padding:.5rem 0 0;margin:0}
