/* =========================================================
   LinkNest — Marketplace Redesign CSS
   Append this file's contents to the END of assets/css/linknest.css
   Do NOT replace linknest.css — simply paste everything below
   at the very end of your existing file.
   ========================================================= */

/* Crawlable pilot website detail links */
.ln-row-name-link { color: inherit; text-decoration: none; }
.ln-row-name-link:hover { text-decoration: underline; text-underline-offset: 3px; }

/* ── MARKETPLACE HERO ───────────────────────────────────── */
.ln-mkt-hero {
  background: var(--navy);
  padding: 4.5rem 5% 3.5rem;
  text-align: center;
  position: relative;
  overflow: hidden;
  margin-top: 72px;
}
.ln-mkt-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 60% 80% at 50% 50%, rgba(37,99,235,.1) 0%, transparent 70%);
  pointer-events: none;
}
.ln-mkt-hero-inner { position: relative; z-index: 1; }
.ln-mkt-hero h1 {
  font-family: 'Space Grotesk', sans-serif;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 700;
  color: #fff;
  letter-spacing: -0.5px;
  margin: .5rem 0 .75rem;
}
.ln-mkt-hero-sub {
  font-size: 1rem;
  color: var(--muted);
  max-width: 560px;
  margin: 0 auto 1.5rem;
  line-height: 1.75;
}
.ln-mkt-hero-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  justify-content: center;
  font-size: .875rem;
  color: var(--accent2);
}

/* ── FILTER BAR ─────────────────────────────────────────── */
.ln-filter-bar {
  background: var(--navy);
  border-bottom: 1px solid var(--border);
  position: sticky;
  top: 72px;
  z-index: 90;
}
.ln-filter-bar-toggle {
  display: none;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 5%;
  cursor: pointer;
  user-select: none;
}
.ln-filter-toggle-left { display: flex; align-items: center; gap: .75rem; }
.ln-filter-toggle-title {
  font-family: 'Space Grotesk', sans-serif;
  font-size: .9rem;
  font-weight: 700;
  color: #fff;
}
.ln-filter-active-badge {
  background: var(--accent);
  color: #fff;
  font-size: .68rem;
  font-weight: 700;
  padding: .15rem .55rem;
  border-radius: 100px;
}
.ln-filter-toggle-icon {
  font-size: .75rem;
  color: var(--muted);
  transition: transform .3s;
}
.ln-filter-body { padding: 1.25rem 5% 1.5rem; }
.ln-filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  align-items: center;
}
.ln-filter-row-dropdowns { margin-bottom: 1.1rem; }
.ln-filter-row-sliders { align-items: flex-end; gap: 2rem; }

/* Search */
.ln-filter-search-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.ln-filter-search-icon {
  position: absolute;
  left: .75rem;
  font-size: .85rem;
  pointer-events: none;
  opacity: .6;
}
.ln-filter-search {
  background: var(--panel);
  border: 1px solid var(--border);
  color: var(--text);
  padding: .55rem 1rem .55rem 2.25rem;
  border-radius: 10px;
  font-size: .85rem;
  font-family: inherit;
  outline: none;
  min-width: 220px;
  transition: border-color .2s;
}
.ln-filter-search:focus { border-color: var(--accent); }
.ln-filter-search::placeholder { color: var(--muted); }

/* Dropdowns */
.ln-filter-select {
  background: var(--panel);
  border: 1px solid var(--border);
  color: var(--text);
  padding: .55rem 2.25rem .55rem 1rem;
  border-radius: 10px;
  font-size: .85rem;
  font-family: inherit;
  cursor: pointer;
  outline: none;
  transition: border-color .2s;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2394A3B8' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
}
.ln-filter-select:focus { border-color: var(--accent); }
.ln-filter-select option { background: var(--panel); }

/* Reset button */
.ln-filter-reset {
  background: rgba(239,68,68,.1);
  border: 1px solid rgba(239,68,68,.3);
  color: #f87171;
  padding: .55rem 1rem;
  border-radius: 10px;
  font-size: .85rem;
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  transition: all .2s;
  margin-left: auto;
}
.ln-filter-reset:hover { background: rgba(239,68,68,.2); }

/* Range sliders */
.ln-slider-group { display: flex; flex-direction: column; gap: .4rem; min-width: 130px; }
.ln-slider-label {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: .72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--muted);
}
.ln-slider-val { color: var(--accent2); font-weight: 700; }
.ln-range {
  width: 100%;
  height: 4px;
  border-radius: 2px;
  appearance: none;
  background: var(--panel);
  border: 1px solid var(--border);
  cursor: pointer;
  accent-color: var(--accent);
  outline: none;
}
.ln-range::-webkit-slider-thumb {
  appearance: none;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 8px rgba(37,99,235,.5);
  cursor: pointer;
  border: 2px solid #fff;
}
.ln-range::-moz-range-thumb {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--accent);
  border: 2px solid #fff;
  cursor: pointer;
}

/* ── RESULTS BAR ────────────────────────────────────────── */
.ln-results-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: .85rem 5%;
  background: var(--void);
  border-bottom: 1px solid rgba(37,99,235,.1);
  position: relative;
}
.ln-results-count { font-size: .875rem; color: var(--muted); }
.ln-results-count span { font-weight: 700; color: #fff; }
.ln-verified-badge { font-size: .8rem; font-weight: 600; color: #4ade80; }
.ln-spinner {
  width: 20px;
  height: 20px;
  border: 2px solid var(--border);
  border-top-color: var(--accent);
  border-radius: 50%;
  animation: spin .7s linear infinite;
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
}

/* ── TABLE HEADER ───────────────────────────────────────── */
.ln-table-head {
  background: var(--panel);
  border-bottom: 1px solid rgba(37,99,235,.18);
  padding: .75rem 5%;
  position: sticky;
  top: 72px;
  z-index: 20;
}
.ln-row-grid {
  display: grid;
  grid-template-columns: 1fr 90px 90px 115px 135px 85px 110px 155px;
  gap: .75rem;
  align-items: center;
}
.ln-table-head .ln-row-grid span {
  font-size: .68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .09em;
  color: var(--muted);
}

/* ── SITE TABLE ROWS ────────────────────────────────────── */
.ln-sites-table { background: var(--void); }

.ln-row {
  border-bottom: 1px solid rgba(37,99,235,.1);
  transition: background .2s;
}
.ln-row:hover { background: rgba(37,99,235,.05); }
.ln-row .ln-row-grid {
  padding: 1rem 5%;
  align-items: center;
}

/* Site name + avatar */
.ln-col-site { min-width: 0; }
.ln-row-name-wrap {
  display: flex;
  align-items: center;
  gap: .6rem;
  margin-bottom: .5rem;
}
.ln-row-avatar {
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: rgba(37,99,235,.18);
  border: 1px solid rgba(37,99,235,.3);
  color: var(--accent2);
  font-size: .8rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  text-transform: uppercase;
}
.ln-row-name {
  font-family: 'Space Grotesk', sans-serif;
  font-size: .9rem;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color .2s;
}
.ln-row-name:hover { color: var(--accent2); }

/* Niche tags */
.ln-niche-tags { display: flex; flex-wrap: wrap; gap: .35rem; }
.ln-niche-tag {
  font-size: .68rem;
  font-weight: 600;
  padding: .2rem .6rem;
  border-radius: 6px;
  white-space: nowrap;
  background: rgba(37,99,235,.12);
  border: 1px solid rgba(37,99,235,.25);
  color: var(--accent2);
  /* Individual niche colors via data-niche (override below) */
}
.ln-niche-tag[data-niche="technology"]       { background: rgba(59,130,246,.14);  border-color: rgba(59,130,246,.3);  color: #93c5fd; }
.ln-niche-tag[data-niche="business"]         { background: rgba(139,92,246,.14);  border-color: rgba(139,92,246,.3);  color: #c4b5fd; }
.ln-niche-tag[data-niche="finance"]          { background: rgba(16,185,129,.14);  border-color: rgba(16,185,129,.3);  color: #6ee7b7; }
.ln-niche-tag[data-niche="health"]           { background: rgba(236,72,153,.13);  border-color: rgba(236,72,153,.3);  color: #f9a8d4; }
.ln-niche-tag[data-niche="saas"]             { background: rgba(6,182,212,.13);   border-color: rgba(6,182,212,.3);   color: #67e8f9; }
.ln-niche-tag[data-niche="ai"]               { background: rgba(245,158,11,.13);  border-color: rgba(245,158,11,.3);  color: #fcd34d; }
.ln-niche-tag[data-niche="crypto"]           { background: rgba(249,115,22,.13);  border-color: rgba(249,115,22,.3);  color: #fdba74; }
.ln-niche-tag[data-niche="travel"]           { background: rgba(20,184,166,.13);  border-color: rgba(20,184,166,.3);  color: #5eead4; }
.ln-niche-tag[data-niche="casino"]           { background: rgba(239,68,68,.12);   border-color: rgba(239,68,68,.3);   color: #fca5a5; }
.ln-niche-tag[data-niche="igaming"]          { background: rgba(252,165,165,.1);  border-color: rgba(252,165,165,.3); color: #fca5a5; }
.ln-niche-tag[data-niche="gaming"]           { background: rgba(124,58,237,.14);  border-color: rgba(124,58,237,.3);  color: #a78bfa; }
.ln-niche-tag[data-niche="marketing"]        { background: rgba(52,211,153,.13);  border-color: rgba(52,211,153,.3);  color: #6ee7b7; }
.ln-niche-tag[data-niche="real estate"]      { background: rgba(251,191,36,.12);  border-color: rgba(251,191,36,.3);  color: #fde68a; }
.ln-niche-tag[data-niche="education"]        { background: rgba(34,211,238,.12);  border-color: rgba(34,211,238,.3);  color: #67e8f9; }
.ln-niche-tag[data-niche="lifestyle"]        { background: rgba(251,113,133,.12); border-color: rgba(251,113,133,.3); color: #fda4af; }
.ln-niche-tag[data-niche="fashion"]          { background: rgba(192,132,252,.13); border-color: rgba(192,132,252,.3); color: #d8b4fe; }
.ln-niche-tag[data-niche="food"]             { background: rgba(244,114,182,.12); border-color: rgba(244,114,182,.3); color: #f9a8d4; }
.ln-niche-tag[data-niche="automotive"]       { background: rgba(100,116,139,.15); border-color: rgba(100,116,139,.3); color: #cbd5e1; }
.ln-niche-tag[data-niche="environment"]      { background: rgba(110,231,183,.12); border-color: rgba(110,231,183,.3); color: #6ee7b7; }
.ln-niche-tag[data-niche="cbd"]              { background: rgba(74,222,128,.12);  border-color: rgba(74,222,128,.3);  color: #86efac; }
.ln-niche-tag[data-niche="news"]             { background: rgba(148,163,184,.12); border-color: rgba(148,163,184,.3); color: #cbd5e1; }
.ln-niche-tag[data-niche="general"]          { background: rgba(147,197,253,.1);  border-color: rgba(147,197,253,.25);color: #93c5fd; }

/* Column alignment helpers */
.ln-col-center { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.ln-col-right   { display: flex; flex-direction: column; align-items: flex-end; justify-content: center; }

/* Metric cells */
.ln-col-metric .ln-metric-val {
  font-family: 'Space Grotesk', sans-serif;
  font-size: .95rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
}
.ln-metric-val.ln-traffic-val { color: #4ade80; font-size: .8rem; }
.ln-metric-lbl { font-size: .65rem; color: var(--muted); margin-top: .15rem; text-transform: uppercase; letter-spacing: .05em; }

/* Link type badges */
.ln-link-type-badge {
  font-size: .7rem;
  font-weight: 600;
  padding: .3rem .75rem;
  border-radius: 8px;
  white-space: nowrap;
}
.ln-link-type-guest     { background: rgba(59,130,246,.15);  border: 1px solid rgba(59,130,246,.3);  color: #93c5fd; }
.ln-link-type-insertion { background: rgba(168,85,247,.14);  border: 1px solid rgba(168,85,247,.3);  color: #c4b5fd; }
.ln-link-type-both      { background: rgba(16,185,129,.14);  border: 1px solid rgba(16,185,129,.3);  color: #6ee7b7; }

/* Country */
.ln-col-country { flex-direction: row; gap: .35rem; }
.ln-country-flag { font-size: 1.25rem; line-height: 1; }
.ln-country-code { font-size: .75rem; color: var(--muted); }

/* Price + action buttons */
.ln-col-actions { gap: .5rem; }
.ln-row-price {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--accent2);
}
.ln-row-price .woocommerce-Price-amount { font-size: inherit; color: inherit; }
.ln-row-btns { display: flex; gap: .5rem; align-items: center; }

.ln-guidelines-btn {
  background: rgba(37,99,235,.1);
  border: 1px solid rgba(37,99,235,.3);
  color: var(--accent2);
  font-size: .75rem;
  font-weight: 600;
  padding: .4rem .85rem;
  border-radius: 8px;
  cursor: pointer;
  font-family: inherit;
  transition: all .2s;
  white-space: nowrap;
}
.ln-guidelines-btn:hover { background: rgba(37,99,235,.22); border-color: rgba(37,99,235,.5); }

.ln-buy-btn {
  background: linear-gradient(135deg, var(--accent), #1D4ED8);
  color: #fff !important;
  font-size: .75rem;
  font-weight: 700;
  padding: .4rem .85rem;
  border-radius: 8px;
  cursor: pointer;
  font-family: inherit;
  border: none;
  transition: all .2s;
  white-space: nowrap;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  box-shadow: 0 2px 12px rgba(37,99,235,.35);
}
.ln-buy-btn:hover { box-shadow: 0 4px 20px rgba(37,99,235,.55); transform: translateY(-1px); color: #fff !important; }

/* No-results */
.ln-no-results { text-align: center; padding: 5rem 5%; color: var(--muted); }
.ln-no-results h3 { font-size: 1.5rem; color: #fff; margin-bottom: .5rem; }

/* ── GUIDELINES MODAL ───────────────────────────────────── */
.ln-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  background: rgba(5,12,26,.85);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s;
}
.ln-modal-overlay.open { opacity: 1; pointer-events: auto; }

.ln-modal {
  background: var(--panel);
  border: 1px solid rgba(37,99,235,.3);
  border-radius: 20px;
  width: 100%;
  max-width: 680px;
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: 0 32px 100px rgba(0,0,0,.7), 0 0 0 1px rgba(255,255,255,.04) inset;
  transform: translateY(16px) scale(.98);
  transition: transform .28s cubic-bezier(.34,1.56,.64,1);
}
.ln-modal-overlay.open .ln-modal { transform: translateY(0) scale(1); }

/* Modal scrollbar */
.ln-modal::-webkit-scrollbar { width: 5px; }
.ln-modal::-webkit-scrollbar-track { background: var(--navy); }
.ln-modal::-webkit-scrollbar-thumb { background: var(--accent); border-radius: 3px; }

.ln-modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1.5rem 1.5rem 1rem;
  border-bottom: 1px solid var(--border);
}
.ln-modal-label {
  font-size: .7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .14em;
  color: var(--accent2);
  margin-bottom: .4rem;
}
.ln-modal-site-name {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 1.2rem;
  font-weight: 700;
  color: #fff;
  margin: 0;
}
.ln-modal-close {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.1);
  color: var(--muted);
  font-size: .85rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all .2s;
  flex-shrink: 0;
  font-family: inherit;
}
.ln-modal-close:hover { background: rgba(239,68,68,.15); border-color: rgba(239,68,68,.4); color: #f87171; }

.ln-modal-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  padding: 1rem 1.5rem;
}
.ln-modal-badge {
  font-size: .75rem;
  font-weight: 600;
  padding: .3rem .85rem;
  border-radius: 100px;
  background: rgba(37,99,235,.12);
  border: 1px solid rgba(37,99,235,.28);
  color: var(--accent2);
}

.ln-modal-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .75rem;
  padding: 0 1.5rem 1rem;
}
.ln-modal-field {
  background: rgba(10,22,40,.7);
  border: 1px solid rgba(37,99,235,.12);
  border-radius: 12px;
  padding: 1rem;
  grid-column: span 2; /* Full-width by default; override below for 2-col items */
}
/* Short single-value fields can share a row */
.ln-modal-field:nth-child(3),
.ln-modal-field:nth-child(4),
.ln-modal-field:nth-child(5),
.ln-modal-field:nth-child(6) { grid-column: span 1; }

.ln-modal-field-label {
  font-size: .68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .09em;
  color: var(--muted);
  margin-bottom: .4rem;
}
.ln-modal-field-val { font-size: .875rem; color: var(--text); line-height: 1.65; }

.ln-modal-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1.5rem;
  border-top: 1px solid var(--border);
  background: rgba(5,12,26,.5);
  border-radius: 0 0 20px 20px;
  gap: 1rem;
}
.ln-modal-price {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 1.05rem;
  font-weight: 700;
  color: var(--accent2);
}
.ln-modal-buy {
  background: linear-gradient(135deg, var(--accent), #1D4ED8);
  color: #fff;
  padding: .65rem 1.5rem;
  border-radius: 10px;
  font-size: .875rem;
  font-weight: 700;
  border: none;
  cursor: pointer;
  font-family: inherit;
  transition: all .25s;
  box-shadow: 0 4px 20px rgba(37,99,235,.4);
}
.ln-modal-buy:hover { box-shadow: 0 8px 30px rgba(37,99,235,.55); transform: translateY(-1px); }

/* ── RESPONSIVE OVERRIDES ───────────────────────────────── */
@media (max-width: 1100px) {
  .ln-row-grid {
    grid-template-columns: 1fr 80px 80px 100px 115px 75px 95px 135px;
  }
}

@media (max-width: 768px) {
  .ln-filter-bar-toggle { display: flex; }
  .ln-filter-body {
    max-height: 0;
    overflow: hidden;
    padding: 0 5%;
    transition: max-height .35s ease, padding .35s ease;
  }
  .ln-filter-body.open {
    max-height: 700px;
    padding: 1rem 5% 1.5rem;
  }
  .ln-filter-row-dropdowns { flex-direction: column; align-items: stretch; }
  .ln-filter-search, .ln-filter-select { width: 100%; }
  .ln-filter-row-sliders { flex-direction: column; gap: 1.1rem; }
  .ln-slider-group { min-width: 100%; }
  .ln-filter-reset { margin-left: 0; width: 100%; text-align: center; }

  /* Simplified mobile card layout */
  .ln-table-head { display: none; }
  .ln-row .ln-row-grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto auto;
    padding: 1.25rem 5%;
    gap: .75rem;
  }
  .ln-col-site     { grid-column: 1 / -1; }
  .ln-col-actions  { grid-column: 1 / -1; flex-direction: row; justify-content: space-between; align-items: center; }
  .ln-col-country  { flex-direction: row; justify-content: center; }

  .ln-modal-grid { grid-template-columns: 1fr; }
  .ln-modal-field,
  .ln-modal-field:nth-child(3),
  .ln-modal-field:nth-child(4),
  .ln-modal-field:nth-child(5),
  .ln-modal-field:nth-child(6) { grid-column: span 1; }

  .ln-modal-footer { flex-direction: column; text-align: center; }
  .ln-modal-buy { width: 100%; }
}

@media (max-width: 480px) {
  .ln-mkt-hero { padding: 3.5rem 5% 2.5rem; }
  .ln-mkt-hero-badges { flex-direction: column; gap: .5rem; align-items: center; }
  .ln-row .ln-row-grid { grid-template-columns: 1fr; }
  .ln-col-center, .ln-col-right { align-items: flex-start; text-align: left; }
  .ln-col-actions { flex-direction: column; align-items: stretch; }
  .ln-row-btns { width: 100%; }
  .ln-guidelines-btn, .ln-buy-btn { flex: 1; text-align: center; justify-content: center; }
}


/* ── Marketplace SEO Content ─────────────────────────────── */
.ln-mkt-seo {
  padding: 4.5rem 5%;
  border-top: 1px solid rgba(148,163,184,.14);
  background: rgba(15,23,42,.32);
}
.ln-mkt-seo-inner { max-width: 1120px; margin: 0 auto; }
.ln-mkt-seo h2 {
  max-width: 820px;
  margin: .55rem 0 1rem;
  font-family: 'Space Grotesk', sans-serif;
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  line-height: 1.15;
}
.ln-mkt-seo p {
  max-width: 900px;
  margin: 0 0 1rem;
  line-height: 1.8;
  color: var(--muted, #94a3b8);
}
.ln-mkt-seo a { color: var(--accent2); text-decoration: underline; text-underline-offset: 3px; }
.ln-mkt-seo-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 1.75rem 0;
}
.ln-mkt-seo-card {
  padding: 1.35rem;
  border: 1px solid rgba(148,163,184,.14);
  border-radius: 16px;
  background: rgba(15,23,42,.48);
}
.ln-mkt-seo-card h3 { margin: 0 0 .65rem; font-family: 'Space Grotesk', sans-serif; font-size: 1.05rem; }
.ln-mkt-seo-card p { margin: 0; }
.ln-mkt-seo-note { font-size: .9rem; }
@media (max-width: 768px) {
  .ln-mkt-seo { padding: 3.25rem 5%; }
  .ln-mkt-seo-grid { grid-template-columns: 1fr; }
}

/* ── Marketplace Pagination ──────────────────────────────── */
.ln-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  width: 100%;
  padding: 2.25rem 5% 3.25rem;
  margin: 0 auto;
}
.ln-page-link {
  min-width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 .95rem;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: rgba(15,23,42,.72);
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.ln-page-link:hover,
.ln-page-link:focus-visible {
  border-color: var(--accent2, var(--accent));
  background: rgba(37,99,235,.18);
  transform: translateY(-2px);
}
.ln-page-link.is-current,
.ln-page-link[aria-current="page"] {
  border-color: var(--accent);
  background: var(--accent);
  color: #fff;
  box-shadow: 0 0 0 3px rgba(37,99,235,.18), 0 8px 22px rgba(37,99,235,.28);
  transform: translateY(-1px);
  cursor: default;
}
.ln-page-prev,
.ln-page-next {
  min-width: 96px;
}
@media (max-width: 640px) {
  .ln-pagination { gap: .55rem; padding: 1.75rem 4% 2.5rem; }
  .ln-page-link { min-width: 44px; height: 44px; padding: 0 .7rem; font-size: .9rem; }
  .ln-page-prev, .ln-page-next { min-width: 82px; }
}
