/* ============================================================
   CATEGORIES (all categories) - .sdx add-on (v1)
   Loads AFTER seller-dash.css + seller-business-sdx.css +
   serve-card-sdx.css (ed-cat-grid) + public-sdx.css (plx-hero,
   ed-crumb, plx-kicker, ed-searchbar, ed-skel-card, ed-empty).
   Styles the section head (ed-head) + the ed-cat category card.
   JS untouched (/api/categories).
   ============================================================ */

/* ---- section head ---- */
body.fp-ed .sdx .ed-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 20px}
body.fp-ed .sdx .ed-head .ed-kicker{display:inline-flex;align-items:center;gap:11px;font-family:'Inter',sans-serif;font-size:10.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--sdx-brand-600);margin-bottom:8px}
body.fp-ed .sdx [data-cat-count]{font-family:'Inter',sans-serif;font-size:clamp(20px,2.6vw,26px);font-weight:800;letter-spacing:-.03em;color:var(--sdx-ink-900);line-height:1.1;margin:0}

/* ---- category card ---- */
body.fp-ed .sdx .ed-cat{position:relative;display:flex;flex-direction:column;background:var(--sdx-surface);border:1px solid var(--sdx-line);border-radius:18px;box-shadow:var(--sdx-shadow-card);padding:22px 22px 18px;text-decoration:none;overflow:hidden;transition:.2s cubic-bezier(.2,.7,.2,1)}
body.fp-ed .sdx .ed-cat::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--sdx-brand-500),var(--sdx-brand-700));transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.2,.7,.2,1)}
body.fp-ed .sdx .ed-cat:hover{transform:translateY(-4px);border-color:var(--sdx-brand-200);box-shadow:0 20px 40px -18px rgba(16,24,40,.24)}
body.fp-ed .sdx .ed-cat:hover::before{transform:scaleX(1)}
body.fp-ed .sdx .ed-cat-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
body.fp-ed .sdx .ed-cat-top h3{font-family:'Inter',sans-serif;font-size:17px;font-weight:800;letter-spacing:-.02em;color:var(--sdx-ink-900);line-height:1.25;margin:0}
body.fp-ed .sdx .ed-cat:hover .ed-cat-top h3{color:var(--sdx-brand-700)}
body.fp-ed .sdx .ed-cat-no{flex:none;font-family:'Inter',sans-serif;font-size:12px;font-weight:800;color:var(--sdx-brand-300,#9db6ff);background:var(--sdx-brand-50);border:1px solid var(--sdx-brand-100);border-radius:9px;padding:3px 8px;letter-spacing:.02em}
body.fp-ed .sdx .ed-cat-desc{font-family:'Inter',sans-serif;font-size:13px;color:var(--sdx-ink-500);line-height:1.55;margin:11px 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.9em}
body.fp-ed .sdx .ed-cat-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}
body.fp-ed .sdx .ed-cat-tags .ed-chip{font-family:'Inter',sans-serif;font-size:11px;font-weight:600;color:var(--sdx-ink-600);background:var(--sdx-surface-2);border:1px solid var(--sdx-line);border-radius:8px;padding:4px 9px;white-space:nowrap}
body.fp-ed .sdx .ed-cat-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:15px}
body.fp-ed .sdx .ed-cat-foot > span:first-child{font-family:'Inter',sans-serif;font-size:12px;color:var(--sdx-ink-400)}
body.fp-ed .sdx .ed-cat-foot > span:first-child b{font-family:'Inter',sans-serif;font-weight:800;color:var(--sdx-ink-900)}
body.fp-ed .sdx .ed-cat-go{display:inline-flex;align-items:center;gap:5px;font-family:'Inter',sans-serif;font-size:12.5px;font-weight:800;color:var(--sdx-brand-600);white-space:nowrap;transition:.15s}
body.fp-ed .sdx .ed-cat-go svg{width:14px;height:14px;transition:transform .18s}
body.fp-ed .sdx .ed-cat:hover .ed-cat-go{color:var(--sdx-brand-700)}
body.fp-ed .sdx .ed-cat:hover .ed-cat-go svg{transform:translateX(3px)}

/* entrance */
@keyframes catRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
body.fp-ed .sdx .ed-cat{animation:catRise .45s cubic-bezier(.2,.7,.2,1) both}
body.fp-ed .sdx .ed-cat-grid > *:nth-child(2) .ed-cat,body.fp-ed .sdx .ed-cat:nth-child(2){animation-delay:.04s}
body.fp-ed .sdx .ed-cat:nth-child(3){animation-delay:.08s}
body.fp-ed .sdx .ed-cat:nth-child(4){animation-delay:.12s}
@media (prefers-reduced-motion:reduce){body.fp-ed .sdx .ed-cat{animation:none}}
