/* special offers: card pill, listing block, seller form, Buy page filter and its popover (public/specials.js) */
.pill.sp{display:inline-flex;align-items:center;gap:5px;background:color-mix(in srgb,var(--amber) 14%,transparent);color:var(--amber);max-width:100%;overflow:hidden}
.pill.sp>span:first-of-type{overflow:hidden;text-overflow:ellipsis}
.pill.sp svg{flex:none}
.pill.sp .spmore{opacity:.8;font-weight:700}
.eyebrow svg{vertical-align:-1px;margin-right:2px}

/* listing page */
.spbox{display:grid;gap:12px;border-color:color-mix(in srgb,var(--amber) 32%,var(--line))}
.spbox .sphead{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.spbox .eyebrow{color:var(--amber)}
.splist{list-style:none;margin:0;padding:0;display:grid;gap:0}
.splist li{display:grid;gap:3px;padding:10px 0 10px 14px;border-top:1px solid var(--line);position:relative;min-width:0;overflow-wrap:anywhere}
.splist li:first-child{border-top:0;padding-top:2px}
.splist li::before{content:"";position:absolute;left:0;top:17px;width:6px;height:6px;border-radius:50%;background:var(--amber)}
.splist li:first-child::before{top:9px}
.splist b{font-size:.94rem}
.splist .spd{display:grid;gap:2px;font-size:.86rem;color:var(--smoke)}
.splist .spd b{font-size:inherit;color:var(--chalk)}
.splist .spend{font-family:var(--mono);font-size:.72rem;letter-spacing:.04em;color:var(--dim)}
.spwas{color:var(--dim)}
.spwasline{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-top:2px;font-size:.86rem}
.spwasline s{color:var(--dim);font-family:var(--mono)}
.spwasline span{color:var(--amber);font-weight:600}
.sp-m{display:none;margin:0 0 18px}
@media (max-width:960px){.sp-m{display:grid}.sp-d{display:none}}

/* seller form */
.spform{display:grid;gap:10px}
.spform .sphead{display:flex;align-items:baseline;gap:8px}
.spform .sphead .opt{color:var(--dim);font-size:.76rem}
.spform .sphead .eyebrow{color:var(--amber)}
.spf-list{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.sprow-f{display:grid;gap:10px;padding:12px 14px;border-top:1px solid var(--line);background:var(--pit)}
.sprow-f:first-child{border-top:0}
.sprow-f.on{background:color-mix(in srgb,var(--amber) 6%,var(--pit))}
.sprow-f.off .check{cursor:default}
.sprow-f.off b{color:var(--smoke)}
.sprow-f .check>span{display:grid;gap:2px}
.spf-hint{display:block;font-weight:400}
.spf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(140px,100%),1fr));gap:10px;padding-left:26px}
.spf-grid .spf-note{grid-column:1/-1}
@media (max-width:520px){.spf-grid{padding-left:0}}
.spmanage .spprice{display:grid;gap:4px;max-width:420px}
.spexp{color:var(--amber)}

/* Buy page filter row and the first visit popover */
.spfrow{position:relative;display:flex;align-items:center;gap:6px}
.spfrow .check{flex:1;min-width:0}
.spinfo{flex:none;width:32px;height:32px;margin:-6px -6px -6px 0;display:inline-grid;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--smoke);cursor:pointer}
.spinfo:hover,.spinfo[aria-expanded="true"]{color:var(--chalk);background:var(--pit2)}
.spinfo:focus-visible{outline:2px solid var(--brass);outline-offset:1px}
.sppop{position:absolute;z-index:6;top:calc(100% + 10px);left:0;right:0;background:var(--chalk);color:var(--asphalt);border-radius:12px;padding:12px 14px 14px;box-shadow:0 10px 30px rgba(0,0,0,.22);display:grid;gap:6px;animation:sppop .18s ease-out}
.sppop::before{content:"";position:absolute;top:-6px;right:9px;width:12px;height:12px;background:var(--chalk);transform:rotate(45deg);border-radius:2px}
.sppop-h{display:flex;justify-content:space-between;align-items:center;gap:10px}
.sppop-t{font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--brass-deep)}
:root[data-theme="dark"] .sppop-t{color:var(--brass-deep)}
.sppop p{margin:0;font-size:.88rem;line-height:1.45}
.sppop-x{width:32px;height:32px;margin:-8px -8px -6px 0;border:0;border-radius:50%;background:transparent;color:inherit;font-size:1.25rem;line-height:1;cursor:pointer;opacity:.8}
.sppop-x:hover{opacity:1;background:color-mix(in srgb,var(--asphalt) 14%,transparent)}
.sppop-x:focus-visible{outline:2px solid var(--brass-deep)}
@keyframes sppop{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.sppop{animation:none}}
.rail .fbody{overflow:visible}
