/* ═══ /collections + /blog + /shop + /music polish ═══ */

/* ── COLLECTIONS — карточки подборок ────────────── */
.coll-card{
  border-radius:var(--p-r-lg) !important;
  border:1px solid var(--p-line) !important;
  padding:24px !important;
  transition:
    border-color var(--p-base) var(--p-ease),
    background var(--p-base) var(--p-ease),
    transform var(--p-slow) var(--p-ease),
    box-shadow var(--p-slow) var(--p-ease) !important;
}
.coll-card:hover{
  border-color:var(--p-accent) !important;
  transform:translateY(-3px);
  box-shadow:0 14px 32px rgba(0,0,0,.45);
}
.coll-card-curated{
  border-color:rgba(212,182,86,.4) !important;
  background:linear-gradient(135deg,
    rgba(212,182,86,.06) 0%,
    rgba(212,182,86,.01) 100%) !important;
}
.coll-card-title{
  font-size:18px !important;
  letter-spacing:.04em !important;
  color:var(--p-ink) !important;
  margin-bottom:6px !important;
}
.coll-card-desc{
  color:var(--p-ink-mute) !important;
  font-size:13px !important;
  line-height:1.5 !important;
  max-width:50ch;
}
.coll-card-arrow{
  color:var(--p-accent) !important;
  font-size:18px !important;
  transition:transform var(--p-base) var(--p-ease);
}
.coll-card:hover .coll-card-arrow{transform:translateX(4px);}
.coll-curated-badge{
  font-size:9px !important;
  letter-spacing:2px !important;
  padding:4px 10px !important;
  background:rgba(212,182,86,.12) !important;
  border:1px solid rgba(212,182,86,.4) !important;
  border-radius:9999px !important;
  color:var(--p-accent) !important;
}
.coll-section-title{
  font-size:11px !important;
  letter-spacing:3px !important;
  color:var(--p-accent) !important;
  text-transform:uppercase;
  margin-bottom:18px !important;
  display:flex;
  align-items:center;
  gap:10px;
}
.coll-section-title::before{
  content:"";
  width:6px;height:6px;
  border-radius:50%;
  background:var(--p-accent);
  flex-shrink:0;
}

/* ── BLOG — карточки постов ───────────────────── */
.bg-card,
.blog-card{
  border-radius:var(--p-r-lg) !important;
  background:var(--p-surface) !important;
  border:1px solid var(--p-line) !important;
  overflow:hidden;
  transition:
    border-color var(--p-base) var(--p-ease),
    transform var(--p-slow) var(--p-ease),
    box-shadow var(--p-slow) var(--p-ease) !important;
}
.bg-card:hover,
.blog-card:hover{
  border-color:var(--p-accent) !important;
  transform:translateY(-4px);
  box-shadow:0 14px 32px rgba(0,0,0,.45);
}
.bg-card img,
.blog-card img{
  transition:transform var(--p-slow) var(--p-ease);
}
.bg-card:hover img,
.blog-card:hover img{transform:scale(1.04);}

/* Article page — body text line-length */
#page-blog-article .article-body,
#page-blog-article .blog-content,
.blog-content p{
  max-width:65ch !important;
  font-size:16px !important;
  line-height:1.75 !important;
  color:var(--p-ink-soft) !important;
}
#page-blog-article .article-body h2,
#page-blog-article .article-body h3{
  color:var(--p-ink) !important;
  letter-spacing:.02em !important;
  text-wrap:balance;
}

/* ── SHOP — карточки товаров ──────────────────── */
.shop-card,
.shop-item{
  border-radius:var(--p-r-lg) !important;
  background:var(--p-surface) !important;
  border:1px solid var(--p-line) !important;
  overflow:hidden;
  transition:
    border-color var(--p-base) var(--p-ease),
    transform var(--p-slow) var(--p-ease),
    box-shadow var(--p-slow) var(--p-ease) !important;
}
.shop-card:hover,
.shop-item:hover{
  border-color:var(--p-accent) !important;
  transform:translateY(-4px);
  box-shadow:0 14px 32px rgba(0,0,0,.45);
}
.shop-card img{
  transition:transform var(--p-slow) var(--p-ease);
}
.shop-card:hover img{transform:scale(1.05);}

.shop-add-btn,
.shop-buy-btn,
.cart-checkout-btn{
  border-radius:var(--p-r) !important;
  padding:12px 22px !important;
  letter-spacing:2px !important;
  transition:
    background var(--p-base) var(--p-ease),
    transform var(--p-base) var(--p-ease),
    box-shadow var(--p-base) var(--p-ease) !important;
}
.shop-add-btn:hover,
.shop-buy-btn:hover,
.cart-checkout-btn:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(212,182,86,.35);
}

/* Hero магазина — золотой акцент */
.shop-hero{
  border-radius:var(--p-r-lg) !important;
  border:1px solid var(--p-line) !important;
  padding:48px 32px !important;
  background:linear-gradient(135deg,
    rgba(212,182,86,.04) 0%,
    rgba(0,0,0,.5) 60%) !important;
}
.shop-hero-title{
  letter-spacing:.03em !important;
  text-wrap:balance;
}

/* ── MUSIC ────────────────────────────────────── */
#page-music #mu-spotify{
  border-radius:var(--p-r-md) !important;
  overflow:hidden;
}
#page-music #mu-player{
  border-radius:var(--p-r-md) !important;
  border:1px solid var(--p-line) !important;
  background:var(--p-surface) !important;
  overflow:hidden;
}
#page-music #mu-tracks{
  border-radius:var(--p-r-md) !important;
}
.mu-track{
  border-radius:var(--p-r) !important;
  transition:
    background var(--p-base) var(--p-ease),
    transform var(--p-base) var(--p-ease) !important;
}
.mu-track:hover{
  background:var(--p-surface-acc) !important;
  transform:translateX(2px);
}
.mu-track.active{
  background:rgba(212,182,86,.12) !important;
  border:1px solid var(--p-accent);
}
.mu-track-thumb{border-radius:6px !important;}

#music-search-input{
  padding:12px 18px !important;
  border-radius:9999px !important;
  background:var(--p-surface) !important;
  border:1px solid var(--p-line) !important;
  transition:
    border-color var(--p-base) var(--p-ease),
    box-shadow var(--p-base) var(--p-ease) !important;
}
#music-search-input:focus{
  border-color:var(--p-accent) !important;
  box-shadow:0 0 0 3px rgba(212,182,86,.15);
}

/* ── LOCATIONS ───────────────────────────────── */
.loc-g > div,
.location-card{
  border-radius:var(--p-r-md) !important;
  background:var(--p-surface) !important;
  border:1px solid var(--p-line) !important;
  transition:
    border-color var(--p-base) var(--p-ease),
    transform var(--p-base) var(--p-ease) !important;
}
.loc-g > div:hover,
.location-card:hover{
  border-color:var(--p-accent) !important;
  transform:translateY(-2px);
}

/* ── FOOTER (мелочи) ─────────────────────────── */
.site-footer{
  margin-top:80px !important;
  border-top:1px solid var(--p-line) !important;
  background:rgba(5,5,12,.5) !important;
}
.footer-tagline{
  font-family:'Bebas Neue',sans-serif;
  letter-spacing:.04em !important;
  font-size:14px !important;
  color:var(--p-ink-soft) !important;
}
.footer-desc{
  font-size:13px !important;
  color:var(--p-ink-mute) !important;
  line-height:1.65 !important;
  max-width:50ch !important;
}
.footer-link{
  background:transparent !important;
  border:none !important;
  color:var(--p-ink-mute) !important;
  font-size:13px !important;
  padding:4px 0 !important;
  cursor:pointer;
  transition:color var(--p-base) var(--p-ease) !important;
}
.footer-link:hover{color:var(--p-accent) !important;}
