/* ==========================================================================
   IMBAS AFFILIATE — frontend styles
   Section 1 is the user's original buybox design, kept as close to the
   pasted original as possible. Sections 2+ extend the same visual
   language (tokens, card shape) to the newer placements.
   ========================================================================== */

.imbas-buybox{--ink:#1e293b;--muted:#67768e;--line:#e7e3f2;--card:#fff;--bg:#f9f6fe;--accent:#060097;--accent-dk:#0800c4;--gold:#ffcd57;--radius:18px;--gap:16px;box-sizing:border-box;max-width:760px;margin:40px auto;padding:26px 26px 20px;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--ink);line-height:1.55}
.imbas-buybox *{box-sizing:border-box}
.imbas-buybox .ib-eyebrow{display:flex;align-items:center;gap:8px;font-family:Figtree,sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:7px}
.imbas-buybox .ib-mark{font-weight:800;color:var(--ink)}
.imbas-buybox .ib-mark::after{content:"·";margin:0 2px 0 8px;color:var(--muted)}
.imbas-buybox .ib-head{font-family:Figtree,sans-serif;font-size:21px;font-weight:600;letter-spacing:-.02em;color:var(--ink);margin:0 0 5px}
.imbas-buybox .ib-intro{font-size:13.5px;color:var(--muted);margin:0 0 20px;max-width:64ch}
.imbas-buybox .ib-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--gap)}
.imbas-buybox .ib-card{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:15px;min-width:0}
.imbas-buybox .ib-card.top{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.imbas-buybox .ib-toppick{position:absolute;top:11px;right:11px;font-family:Figtree,sans-serif;font-size:9.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#1e293b;background:var(--gold);padding:3px 8px;border-radius:100px;z-index:1}
.imbas-buybox .ib-imgwrap{aspect-ratio:1/1;border-radius:10px;background:#fff;border:1px solid var(--line);margin-bottom:13px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.imbas-buybox .ib-imgwrap img{width:100%;height:100%;object-fit:contain;padding:8px}
.imbas-buybox .ib-brand{font-family:Figtree,sans-serif;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700}
.imbas-buybox .ib-name{font-family:Figtree,sans-serif;font-size:15px;font-weight:600;color:var(--ink);margin:3px 0 8px;line-height:1.25;min-height:2.4em}
.imbas-buybox .ib-why{font-size:12.5px;color:var(--muted);margin:0 0 15px;min-height:4.4em}
.imbas-buybox .ib-cta{margin-top:auto}
.imbas-buybox .ib-buylabel{display:block;font-family:Figtree,sans-serif;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.imbas-buybox .ib-buyrow{display:flex;gap:8px}
.imbas-buybox a.ib-buy{flex:1;display:flex;align-items:center;justify-content:center;font-family:Figtree,sans-serif;font-size:13px;font-weight:600;text-decoration:none;padding:10px 8px;border-radius:100px;border:1px solid var(--line);background:#fff;color:var(--ink) !important;white-space:nowrap;transition:background .15s,border-color .15s,transform .1s,box-shadow .15s}
.imbas-buybox a.ib-buy:hover{background:#f6f4fe;border-color:#cfc7ee;transform:translateY(-1px)}
.imbas-buybox a.ib-buy.ib-buy--primary{background:var(--accent);border-color:var(--accent);color:#fff !important}
.imbas-buybox a.ib-buy.ib-buy--primary:hover{background:var(--accent-dk);border-color:var(--accent-dk);box-shadow:0 6px 16px rgba(6,0,151,.22)}
.imbas-buybox a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.imbas-buybox .ib-foot{margin-top:20px;padding-top:14px;border-top:1px solid var(--line);font-size:11.5px;color:var(--muted)}
.imbas-buybox .ib-foot p{margin:0 0 6px}
.imbas-buybox a.ib-scan{color:var(--accent) !important;font-weight:600;text-decoration:none;border-bottom:1.5px solid var(--accent)}

/* ================= end-of-article "Shop this article" recap =============
   Same card language, compact: no "why" copy, smaller image, tighter grid */
.imbas-buybox.ib-recap{margin-top:56px}
.imbas-buybox .ib-grid--compact{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.imbas-buybox .ib-card--compact{padding:12px}
.imbas-buybox .ib-card--compact .ib-imgwrap{margin-bottom:9px}
.imbas-buybox .ib-card--compact .ib-name{min-height:0;margin-bottom:10px}

/* ================= TOC sidebar mini-pick ================= */
.imbas-toc-pick{margin-top:14px;background:#f9f6fe;border:1px solid #e7e3f2;border-radius:18px;padding:16px}
.imbas-toc-pick-label{font-family:Figtree,-apple-system,sans-serif;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#67768e;margin:0 0 12px}
.imbas-toc-pick-item{position:relative;padding:12px;margin-bottom:10px;background:#fff;border:1px solid #e7e3f2;border-radius:14px}
.imbas-toc-pick-item:last-child{margin-bottom:0}
.imbas-toc-pick-item.top{border-color:#ffcd57;box-shadow:0 0 0 1px #ffcd57}
.imbas-toc-pick-badge{display:inline-block;font-family:Figtree,-apple-system,sans-serif;font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#1e293b;background:#ffcd57;padding:2px 7px;border-radius:100px;margin-bottom:8px}
.imbas-toc-pick-body{display:flex;gap:10px;align-items:center;margin-bottom:10px}
.imbas-toc-pick-img{width:48px;height:48px;flex-shrink:0;border-radius:8px;background:#f9f6fe;border:1px solid #e7e3f2;overflow:hidden;display:flex;align-items:center;justify-content:center}
.imbas-toc-pick-img img{width:100%;height:100%;object-fit:contain;padding:4px}
.imbas-toc-pick-brand{font-family:Figtree,-apple-system,sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#67768e;margin:0}
.imbas-toc-pick-name{font-family:Figtree,-apple-system,sans-serif;font-size:13.5px;font-weight:600;color:#1e293b;margin:2px 0 0;line-height:1.25}
.imbas-toc-pick .ib-buyrow{display:flex;gap:6px}
.imbas-toc-pick a.ib-buy{flex:1;display:flex;align-items:center;justify-content:center;font-family:Figtree,-apple-system,sans-serif;font-size:12px;font-weight:600;text-decoration:none;padding:8px;border-radius:100px;border:1px solid #e7e3f2;background:#fff;color:#1e293b !important;white-space:nowrap;transition:background .15s}
.imbas-toc-pick a.ib-buy--primary{background:#060097;border-color:#060097;color:#fff !important}
.imbas-toc-pick a.ib-buy--primary:hover{background:#0800c4}

/* ================= sidebar featured/trending carousel ================= */
.imbas-carousel-widget{padding:16px 0 20px}
.imbas-carousel-head{display:flex;align-items:center;justify-content:space-between;padding:0 20px;margin-bottom:12px;gap:10px}
.imbas-carousel-widget .w-label{font-family:Figtree,-apple-system,sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#8b8b8b;margin:0}
.imbas-carousel-nav{display:flex;gap:6px;flex-shrink:0}
.imbas-carousel-nav button{width:26px;height:26px;border-radius:50%;border:none;cursor:pointer;background:#f5f5f5;color:#1e293b;font-size:12px;line-height:1;transition:background .15s}
.imbas-carousel-nav button:hover{background:#e7e3f2}
.imbas-carousel{display:flex;gap:12px;overflow-x:auto;padding:0 20px 4px;scroll-snap-type:x mandatory;scrollbar-width:none}
.imbas-carousel::-webkit-scrollbar{display:none}
.imbas-carousel-card{flex:0 0 128px;scroll-snap-align:start;display:block;text-decoration:none !important;color:inherit;border:1px solid #e7e3f2;border-radius:14px;padding:10px;transition:transform .15s ease,box-shadow .15s ease;background:#fff}
.imbas-carousel-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px rgba(6,0,151,.08)}
.imbas-carousel-img{aspect-ratio:1/1;border-radius:8px;background:#f9f6fe;border:1px solid #e7e3f2;margin-bottom:8px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.imbas-carousel-img img{width:100%;height:100%;object-fit:contain;padding:6px}
.imbas-carousel-name{font-family:Figtree,-apple-system,sans-serif;font-size:12px;font-weight:600;color:#1e293b;margin:0 0 4px;line-height:1.25}
.imbas-carousel-buy{display:block;font-family:Figtree,-apple-system,sans-serif;font-size:10.5px;font-weight:600;color:#060097}

/* ================= inline text-linked mention ================= */
a.imbas-inline-link{color:#060097;font-weight:600;text-decoration:none;border-bottom:1.5px solid rgba(6,0,151,.4);transition:border-color .15s}
a.imbas-inline-link:hover{border-color:#060097}
