:root {
  --cb-ux-ink: #0f172a;
  --cb-ux-muted: #64748b;
  --cb-ux-border: #dbe3ee;
  --cb-ux-soft: #f5f8fc;
  --cb-ux-primary: #18326b;
  --cb-ux-accent: #ef5965;
}

body { padding-bottom: 0; }

.cb-nav-search {
  display: flex;
  width: min(220px, 18vw);
  border: 1px solid var(--cb-ux-border);
  border-radius: 999px;
  overflow: hidden;
  background: #fff;
}
.cb-nav-search input { min-width: 0; width: 100%; border: 0; padding: .45rem .75rem; }
.cb-nav-search button { border: 0; background: transparent; padding: .4rem .7rem; color: var(--cb-ux-primary); }
.cb-nav-search:focus-within { outline: 3px solid rgba(37, 99, 235, .25); outline-offset: 2px; }
.cb-nav-search input:focus { outline: 0 !important; }

.cb-mobile-task-nav { display: none; }

.cb-marketplace-shell { max-width: 1440px; margin: 0 auto; padding: clamp(1rem, 3vw, 2.5rem); }
.cb-marketplace-heading { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin-bottom: 1.25rem; }
.cb-marketplace-heading h1 { margin: 0; color: var(--cb-ux-ink); font-size: clamp(2rem, 4vw, 3.2rem); }
.cb-marketplace-heading p { margin: .4rem 0 0; color: var(--cb-ux-muted); }
.cb-marketplace-search-form { display: grid; grid-template-columns: minmax(220px, 1fr) auto; gap: .75rem; max-width: 900px; margin-bottom: 1rem; }
.cb-marketplace-search-form input { min-height: 50px; border: 1px solid var(--cb-ux-border); border-radius: 12px; padding: .75rem 1rem; }
.cb-search-suggestions { position: absolute; z-index: 1060; left: 0; right: 0; top: calc(100% + .25rem); padding: .35rem; border: 1px solid var(--cb-ux-border); border-radius: 12px; background: #fff; box-shadow: 0 14px 35px rgba(15,23,42,.16); text-align: left; }
.cb-search-suggestions a { display: flex; justify-content: space-between; gap: 1rem; padding: .7rem .8rem; border-radius: 8px; color: var(--cb-ux-ink); text-decoration: none; }
.cb-search-suggestions a:hover,.cb-search-suggestions a.is-active { background: var(--cb-ux-soft); }
.cb-search-suggestions small { color: var(--cb-ux-muted); }
.cb-recent-searches { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; margin: -.25rem 0 1rem; color: var(--cb-ux-muted); font-size: .9rem; }
.cb-recent-searches a { padding: .3rem .6rem; border-radius: 999px; background: var(--cb-ux-soft); }
.cb-marketplace-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .75rem; margin: 1rem 0; }
.cb-marketplace-toolbar__actions { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.cb-marketplace-toolbar select { min-height: 44px; border: 1px solid var(--cb-ux-border); border-radius: 9px; padding: .5rem; }
.cb-active-filters { display: flex; flex-wrap: wrap; gap: .5rem; margin: .75rem 0 1.25rem; }
.cb-active-filter { display: inline-flex; gap: .45rem; align-items: center; padding: .45rem .75rem; border-radius: 999px; background: #e8efff; color: var(--cb-ux-primary); text-decoration: none; font-weight: 700; }
.cb-filter-card { background: #fff; border: 1px solid var(--cb-ux-border); border-radius: 16px; padding: 1rem; position: sticky; top: 1rem; }
.cb-filter-card details { border-bottom: 1px solid var(--cb-ux-border); padding: .75rem 0; }
.cb-filter-card summary { cursor: pointer; font-weight: 800; color: var(--cb-ux-ink); }
.cb-filter-card label { display: block; font-weight: 700; margin: .65rem 0 .3rem; }
.cb-filter-card select,.cb-filter-card input { width: 100%; min-height: 44px; border: 1px solid var(--cb-ux-border); border-radius: 9px; padding: .5rem; }
.cb-marketplace-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.cb-marketplace-empty { padding: clamp(2rem, 6vw, 5rem); text-align: center; border: 1px dashed #a9b8cc; border-radius: 18px; background: var(--cb-ux-soft); }
.cb-marketplace-empty h2 { color: var(--cb-ux-ink); }
.cb-marketplace-empty__actions { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: center; margin-top: 1rem; }
.cb-card-actions { display: flex; gap: .5rem; padding: 0 1rem 1rem; }
.cb-card-action { min-height: 42px; flex: 1; border: 1px solid var(--cb-ux-border); border-radius: 9px; background: #fff; color: var(--cb-ux-primary); font-weight: 800; }
.cb-card-action.is-saved,.cb-card-action[aria-pressed="true"] { background: #eef3ff; border-color: #8aa6e8; }
.cb-result-card-link { color: inherit; text-decoration: none; }
.cb-results-pagination { margin-top: 2rem; }
.cb-results-pagination .page-numbers { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; border: 1px solid var(--cb-ux-border); border-radius: 8px; margin: .2rem; }
.cb-listing-breadcrumb { display: flex; flex-wrap: wrap; gap: .4rem; margin: 1.25rem 0 .5rem; color: var(--cb-ux-muted); font-size: .9rem; }
.cb-listing-breadcrumb a,.cb-back-to-results { color: var(--cb-ux-primary); }
.cb-back-to-results { display: inline-flex; gap: .4rem; align-items: center; min-height: 44px; margin-bottom: .75rem; font-weight: 800; }
.cb-listing-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; margin: 1rem 0; }
.cb-seller-card { display: grid; grid-template-columns: auto 1fr; gap: 1rem; align-items: center; margin: 1.25rem 0; padding: 1.25rem; border: 1px solid var(--cb-ux-border); border-radius: 16px; background: var(--cb-ux-soft); }
.cb-seller-card__avatar img { border-radius: 50%; }
.cb-seller-card__eyebrow { color: var(--cb-ux-muted); text-transform: uppercase; font-size: .75rem; font-weight: 800; }
.cb-seller-card h2 { margin: .15rem 0; font-size: 1.2rem; }
.cb-seller-card p { margin: 0 0 .35rem; color: var(--cb-ux-muted); }
.cb-listing-report { margin: 1.25rem 0; padding: 1rem; border: 1px solid var(--cb-ux-border); border-radius: 12px; }
.cb-listing-report summary { cursor: pointer; font-weight: 800; }
.cb-listing-report form { display: grid; gap: .65rem; margin-top: 1rem; }
.cb-listing-report select,.cb-listing-report textarea { width: 100%; border: 1px solid var(--cb-ux-border); border-radius: 8px; padding: .65rem; }
.cb-listing-similar { margin: 3rem 0; }
.cb-publish-preview { overflow: hidden; border: 1px solid var(--cb-ux-border); border-radius: 14px; background: #fff; }
.cb-publish-preview__media { display: grid; place-items: center; min-height: 110px; background: var(--cb-ux-soft); color: var(--cb-ux-muted); font-size: 2rem; }
.cb-publish-preview__body { padding: 1rem; }
.cb-publish-preview__body span { color: var(--cb-ux-muted); font-size: .78rem; text-transform: uppercase; font-weight: 800; }
.cb-publish-preview__body h5 { margin: .25rem 0; }
.cb-publish-preview__body p { margin: .5rem 0 0; color: var(--cb-ux-muted); }
.cb-account-summary__stats { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .75rem; }
.cb-account-summary__stats a,.cb-account-summary__panel { padding: 1.1rem; border: 1px solid var(--cb-ux-border); border-radius: 14px; background: #fff; text-decoration: none; }
.cb-account-summary__stats strong { display: block; color: var(--cb-ux-ink); font-size: 1.7rem; }
.cb-account-summary__stats span { color: var(--cb-ux-muted); }
.cb-publication-status-nav { display: flex; flex-wrap: wrap; gap: .5rem; }

.cb-compare-tray { position: fixed; z-index: 1040; left: 50%; bottom: 1rem; transform: translateX(-50%); width: min(760px, calc(100% - 2rem)); display: flex; align-items: center; gap: 1rem; padding: .8rem 1rem; background: #0f172a; color: #fff; border-radius: 14px; box-shadow: 0 16px 40px rgba(15,23,42,.3); }
.cb-compare-tray[hidden] { display: none !important; }
.cb-compare-tray__items { display: flex; gap: .5rem; overflow: auto; flex: 1; }
.cb-compare-tray a { color: #fff; white-space: nowrap; }
.cb-compare-tray button { border: 1px solid #fff; color: #fff; background: transparent; border-radius: 8px; padding: .4rem .7rem; }
.cb-compare-dialog { width: min(900px, calc(100% - 2rem)); border: 0; border-radius: 18px; padding: 1.25rem; color: var(--cb-ux-ink); }
.cb-compare-dialog::backdrop { background: rgba(15,23,42,.72); }
.cb-compare-dialog__head { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.cb-compare-dialog__head button { min-width: 44px; min-height: 44px; border: 0; border-radius: 50%; font-size: 1.6rem; }
.cb-compare-table { overflow: auto; }
.cb-compare-table__row { display: grid; grid-template-columns: minmax(120px,.7fr) repeat(3,minmax(160px,1fr)); border-top: 1px solid var(--cb-ux-border); }
.cb-compare-table__row > * { padding: 1rem .65rem; }

@media (max-width: 1100px) {
  .cb-nav-search { display: none; }
  .cb-marketplace-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
  body { padding-bottom: 76px; }
  body.cb-auth-body { padding-bottom: 0; }
  .cb-mobile-task-nav { position: fixed; display: grid; grid-template-columns: repeat(5, 1fr); z-index: 1035; left: 0; right: 0; bottom: 0; min-height: 68px; padding: .35rem .25rem max(.35rem, env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid var(--cb-ux-border); box-shadow: 0 -8px 22px rgba(15,23,42,.08); }
  .cb-mobile-task-nav__item { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .1rem; color: var(--cb-ux-ink); text-decoration: none; font-size: .68rem; min-width: 0; }
  .cb-mobile-task-nav__item i { font-size: 1.3rem; }
  .cb-mobile-task-nav__item.is-primary i { color: var(--cb-ux-accent); font-size: 1.65rem; }
  .cb-nav__saved { display: none !important; }
  .cb-marketplace-heading { align-items: start; flex-direction: column; }
  .cb-marketplace-search-form { grid-template-columns: 1fr; }
  .cb-marketplace-layout { display: block; }
  .cb-marketplace-grid { grid-template-columns: 1fr; }
  .cb-filter-card { position: static; }
  .cb-compare-tray { bottom: 78px; display: block; }
  .cb-compare-tray__items { margin: .5rem 0; }
  .cb-account-summary__stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (prefers-reduced-motion: reduce) {
  .cb-marketplace-shell *, .cb-mobile-task-nav *, .cb-compare-tray * { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
