.dmvpv-store{--dm-bg:rgba(255,255,255,.06);--dm-bg2:rgba(255,255,255,.1);--dm-line:rgba(255,255,255,.14);--dm-text:#e8ecf5;--dm-muted:rgba(232,236,245,.72);--dm-accent:#8b5cf6;--dm-accent2:#22d3ee;color:var(--dm-text);font-family:inherit}
.dmvpv-store *{box-sizing:border-box}.dmvpv-store a{text-decoration:none;color:inherit}.dmvpv-store-head{margin:0 0 30px;padding:30px;border:1px solid var(--dm-line);border-radius:26px;background:linear-gradient(150deg,rgba(255,255,255,.11),rgba(255,255,255,.05));box-shadow:0 18px 52px rgba(0,0,0,.34);position:relative;overflow:hidden}.dmvpv-store-head:before{content:"";position:absolute;inset:-60% -20%;background:radial-gradient(circle at 30% 30%,rgba(139,92,246,.23),transparent 44%),radial-gradient(circle at 80% 40%,rgba(34,211,238,.17),transparent 40%);pointer-events:none}.dmvpv-store-head>*{position:relative}.dmvpv-kicker{display:block;margin:0 0 10px;font-size:12px;font-weight:850;letter-spacing:.18em;text-transform:uppercase;color:var(--dm-accent2)}.dmvpv-store h1{font-size:clamp(32px,4.2vw,52px);line-height:1.05;margin:0 0 14px}.dmvpv-store h2{font-size:clamp(24px,3vw,34px);margin:26px 0 14px}.dmvpv-store p{color:var(--dm-muted);line-height:1.7}.dmvpv-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 24px}.dmvpv-tab{border:1px solid var(--dm-line);border-radius:999px;background:rgba(255,255,255,.07);color:var(--dm-text);padding:11px 18px;font-weight:750;cursor:pointer;transition:.25s}.dmvpv-tab:hover,.dmvpv-tab.active{background:linear-gradient(135deg,rgba(139,92,246,.98),rgba(34,211,238,.75));border-color:rgba(139,92,246,.82);transform:translateY(-2px);box-shadow:0 10px 30px rgba(139,92,246,.25)}.dmvpv-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.dmvpv-product-card{display:flex;flex-direction:column;min-height:100%;border:1px solid var(--dm-line);border-radius:24px;overflow:hidden;background:linear-gradient(150deg,rgba(255,255,255,.1),rgba(255,255,255,.05));box-shadow:0 14px 42px rgba(0,0,0,.34);transition:.35s}.dmvpv-product-card:hover{transform:translateY(-6px);border-color:rgba(255,255,255,.25);box-shadow:0 26px 70px rgba(0,0,0,.48),0 0 80px rgba(139,92,246,.16)}.dmvpv-product-cover{display:block;aspect-ratio:1;background:rgba(255,255,255,.05);overflow:hidden}.dmvpv-product-cover img{width:100%;height:100%;object-fit:cover;transition:.35s}.dmvpv-product-card:hover .dmvpv-product-cover img{transform:scale(1.04)}.dmvpv-cover-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 20%,rgba(139,92,246,.45),transparent 48%),radial-gradient(circle at 80% 50%,rgba(34,211,238,.25),transparent 45%),rgba(255,255,255,.05)}.dmvpv-cover-placeholder span{font-size:62px;color:#fff;text-shadow:0 0 34px rgba(255,255,255,.45)}.dmvpv-product-body{display:flex;flex-direction:column;gap:14px;padding:20px;flex:1}.dmvpv-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.dmvpv-badge{display:inline-flex;align-items:center;border:1px solid rgba(34,211,238,.32);border-radius:999px;padding:6px 11px;font-size:12px;font-weight:800;color:var(--dm-accent2);background:rgba(34,211,238,.08)}.dmvpv-artist{font-size:12px;color:var(--dm-muted);font-weight:700}.dmvpv-product-card h3{font-size:22px;line-height:1.18;margin:0}.dmvpv-desc{margin:0;font-size:14px}.dmvpv-collection-meta{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--dm-muted);border-left:2px solid rgba(34,211,238,.4);padding-left:12px}.dmvpv-audio audio{width:100%;height:44px}.dmvpv-buy-options{display:flex;flex-direction:column;gap:10px;margin-top:auto}.dmvpv-buy-option{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:rgba(0,0,0,.16)}.dmvpv-buy-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.dmvpv-buy-copy strong{font-size:14px}.dmvpv-buy-copy span{font-size:12px;color:var(--dm-muted)}.dmvpv-store-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--dm-line);border-radius:999px;background:rgba(255,255,255,.08);color:var(--dm-text);padding:11px 18px;font-size:14px;font-weight:800;line-height:1.1;cursor:pointer;transition:.25s;white-space:nowrap}.dmvpv-store-btn:hover{transform:translateY(-2px);background:rgba(255,255,255,.13);box-shadow:0 10px 30px rgba(139,92,246,.2)}.dmvpv-store-btn-primary{border-color:rgba(139,92,246,.84);background:linear-gradient(135deg,rgba(139,92,246,.98),rgba(34,211,238,.72));color:#fff}.dmvpv-store-btn-disabled{opacity:.58;cursor:not-allowed}.dmvpv-more-link{color:var(--dm-accent2);font-weight:800;font-size:14px}.dmvpv-empty,.dmvpv-notice,.dmvpv-legal-notice{border:1px solid var(--dm-line);border-radius:18px;background:rgba(255,255,255,.06);padding:18px 20px;color:var(--dm-muted)}.dmvpv-notice-success{border-color:rgba(34,211,238,.35);background:rgba(34,211,238,.09);color:var(--dm-text)}.dmvpv-product-layout{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:34px;align-items:start}.dmvpv-product-cover-large{border-radius:28px;border:1px solid var(--dm-line);box-shadow:0 18px 55px rgba(0,0,0,.38)}.dmvpv-product-details{border:1px solid var(--dm-line);border-radius:28px;background:linear-gradient(150deg,rgba(255,255,255,.1),rgba(255,255,255,.05));padding:30px}.dmvpv-rich-text{color:var(--dm-muted)}.dmvpv-back{display:inline-flex;margin:0 0 18px;color:var(--dm-accent2);font-weight:800}.dmvpv-collection-block,.dmvpv-license-cta,.dmvpv-legal-blocks>div{border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(0,0,0,.14);padding:20px;margin:20px 0}.dmvpv-tracklist{margin:12px 0 0;padding-left:22px;color:var(--dm-muted);line-height:1.8}.dmvpv-request-form{margin-top:24px;border:1px solid var(--dm-line);border-radius:24px;background:linear-gradient(150deg,rgba(255,255,255,.09),rgba(255,255,255,.04));padding:24px}.dmvpv-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.dmvpv-form-grid-compact{grid-template-columns:repeat(3,minmax(0,1fr));margin:14px 0}.dmvpv-request-form label{display:flex;flex-direction:column;gap:7px;color:var(--dm-muted);font-size:13px;font-weight:750}.dmvpv-request-form input,.dmvpv-request-form select,.dmvpv-request-form textarea{width:100%;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(0,0,0,.22);color:var(--dm-text);padding:12px 13px;font:inherit;outline:none}.dmvpv-request-form input:focus,.dmvpv-request-form select:focus,.dmvpv-request-form textarea:focus{border-color:rgba(34,211,238,.55);box-shadow:0 0 0 3px rgba(34,211,238,.12)}.dmvpv-full{margin-top:14px}.dmvpv-check{flex-direction:row!important;align-items:flex-start;margin:12px 0}.dmvpv-check input{width:auto;margin-top:3px}.dmvpv-hp{position:absolute!important;left:-9999px!important}.dmvpv-legal-blocks{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}.dmvpv-lang-switcher{display:inline-flex;border:1px solid var(--dm-line);border-radius:999px;overflow:hidden}.dmvpv-lang-switcher a{padding:8px 13px;font-weight:800;color:var(--dm-muted)}.dmvpv-lang-switcher a.active{background:linear-gradient(135deg,rgba(139,92,246,.98),rgba(34,211,238,.72));color:#fff}.dmvpv-store [data-dmvpv-hidden]{display:none!important}
@media(max-width:980px){.dmvpv-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dmvpv-product-layout{grid-template-columns:1fr}.dmvpv-legal-blocks{grid-template-columns:1fr}}
@media(max-width:620px){.dmvpv-store-head,.dmvpv-product-details,.dmvpv-request-form{padding:20px;border-radius:22px}.dmvpv-product-grid{grid-template-columns:1fr}.dmvpv-form-grid,.dmvpv-form-grid-compact{grid-template-columns:1fr}.dmvpv-buy-option{align-items:stretch;flex-direction:column}.dmvpv-store-btn{width:100%}.dmvpv-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px}.dmvpv-tab{flex:0 0 auto}}

/* DM-VPV Store fixes: form selects + legal notice spacing */

/* Normal spacing after purchase buttons */
.dmvpv-product-details .dmvpv-buy-options + .dmvpv-legal-notice,
.dmvpv-product-details .dmvpv-buy-options + .dmvpv-personal-use-notice {
  margin-top: 22px;
}

/* Better legal notice readability */
.dmvpv-personal-use-notice {
  background: linear-gradient(150deg, rgba(255,255,255,.10), rgba(255,255,255,.055));
  border-color: rgba(255,255,255,.18);
  color: rgba(232,236,245,.82);
  line-height: 1.75;
}

.dmvpv-personal-use-notice strong {
  color: #ffffff;
}

/* Form field contrast */
.dmvpv-request-form input,
.dmvpv-request-form select,
.dmvpv-request-form textarea {
  background-color: rgba(8, 12, 24, .92) !important;
  color: #f3f6ff !important;
  border-color: rgba(255,255,255,.18) !important;
}

.dmvpv-request-form input::placeholder,
.dmvpv-request-form textarea::placeholder {
  color: rgba(232,236,245,.48) !important;
}

/* Native select dropdown options */
.dmvpv-request-form select option {
  background-color: #111827 !important;
  color: #f3f6ff !important;
}

.dmvpv-request-form select option:checked,
.dmvpv-request-form select option:hover {
  background-color: #2563eb !important;
  color: #ffffff !important;
}

/* Select itself */
.dmvpv-request-form select {
  color-scheme: dark;
  cursor: pointer;
}

/* Mobile fixes */
@media (max-width: 620px) {
  .dmvpv-product-details .dmvpv-buy-options + .dmvpv-legal-notice,
  .dmvpv-product-details .dmvpv-buy-options + .dmvpv-personal-use-notice {
    margin-top: 18px;
  }

  .dmvpv-personal-use-notice {
    padding: 16px;
    font-size: 14px;
    line-height: 1.65;
  }

  .dmvpv-request-form input,
  .dmvpv-request-form select,
  .dmvpv-request-form textarea {
    font-size: 16px;
  }
}

/* Purchase option descriptions */
.dmvpv-buy-copy {
  gap: 6px;
}

.dmvpv-buy-copy strong {
  line-height: 1.25;
}

.dmvpv-buy-copy span {
  display: block;
  max-width: 360px;
  font-size: 12.5px;
  line-height: 1.45;
  color: rgba(232,236,245,.68);
}

.dmvpv-product-card .dmvpv-buy-option {
  align-items: flex-start;
}

.dmvpv-product-card .dmvpv-buy-copy span {
  max-width: 100%;
}

.dmvpv-product-details .dmvpv-buy-copy span {
  font-size: 14px;
  line-height: 1.55;
}

@media (max-width: 620px) {
  .dmvpv-buy-copy span {
    font-size: 13px;
    line-height: 1.5;
  }
}

/* Purchase options: compact catalog + full product page */

.dmvpv-buy-option {
  display: flex;
  gap: 14px;
  align-items: center;
}

.dmvpv-buy-copy {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
  flex: 1 1 auto;
}

.dmvpv-buy-copy strong {
  line-height: 1.25;
}

.dmvpv-buy-copy span {
  display: block;
  font-size: 13px;
  line-height: 1.45;
  color: rgba(232,236,245,.72);
}

/* Витрина: компактно и аккуратно */
.dmvpv-product-card .dmvpv-buy-options-compact .dmvpv-buy-option {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 9px;
  padding: 13px 14px;
}

.dmvpv-product-card .dmvpv-buy-options-compact .dmvpv-buy-copy span {
  font-size: 12.5px;
  line-height: 1.35;
}

.dmvpv-product-card .dmvpv-buy-options-compact .dmvpv-store-btn,
.dmvpv-product-card .dmvpv-buy-options-compact .dmvpv-store-btn-disabled {
  width: 100%;
  min-width: 0;
  justify-content: center;
  text-align: center;
  white-space: normal;
}

/* Карточка товара: подробное описание */
.dmvpv-product-details .dmvpv-buy-options-full .dmvpv-buy-option {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
}

.dmvpv-product-details .dmvpv-buy-options-full .dmvpv-buy-copy span {
  max-width: 620px;
  font-size: 14px;
  line-height: 1.55;
}

.dmvpv-store-btn-disabled {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border-radius: 999px;
  padding: 10px 18px;
  white-space: normal;
}

/* Mobile */
@media (max-width: 620px) {
  .dmvpv-buy-option,
  .dmvpv-product-details .dmvpv-buy-options-full .dmvpv-buy-option {
    display: grid;
    grid-template-columns: 1fr;
    align-items: stretch;
    gap: 10px;
  }

  .dmvpv-buy-copy span,
  .dmvpv-product-card .dmvpv-buy-options-compact .dmvpv-buy-copy span,
  .dmvpv-product-details .dmvpv-buy-options-full .dmvpv-buy-copy span {
    font-size: 13px;
    line-height: 1.5;
  }

  .dmvpv-store-btn,
  .dmvpv-store-btn-disabled {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}

/* Responsive cover images */

.dmvpv-product-cover {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 24px 24px 0 0;
  background: radial-gradient(circle at 30% 20%, rgba(139,92,246,.32), transparent 42%),
              radial-gradient(circle at 75% 45%, rgba(34,211,238,.22), transparent 46%),
              rgba(255,255,255,.06);
}

.dmvpv-product-cover-large {
  border-radius: 28px;
  max-width: 520px;
}

.dmvpv-cover-img,
.dmvpv-product-cover img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.dmvpv-cover-placeholder {
  width: 100%;
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(circle at 30% 20%, rgba(139,92,246,.32), transparent 42%),
              radial-gradient(circle at 75% 45%, rgba(34,211,238,.22), transparent 46%),
              rgba(255,255,255,.06);
}

.dmvpv-cover-placeholder span {
  font-size: 54px;
  color: rgba(255,255,255,.9);
}

/* Catalog cards */
.dmvpv-product-card .dmvpv-product-cover {
  border-radius: 24px 24px 0 0;
}

/* Product page */
.dmvpv-product-details .dmvpv-product-cover-large {
  width: 100%;
  max-width: 520px;
  border-radius: 28px;
}

/* Tablet */
@media (max-width: 1024px) {
  .dmvpv-product-details .dmvpv-product-cover-large {
    max-width: 460px;
  }
}

/* Mobile */
@media (max-width: 620px) {
  .dmvpv-product-cover {
    border-radius: 22px 22px 0 0;
  }

  .dmvpv-product-details .dmvpv-product-cover-large {
    max-width: 100%;
    border-radius: 24px;
  }

  .dmvpv-cover-placeholder span {
    font-size: 44px;
  }
}

/* Product single: separate description, audio preview and purchase blocks */
.dmvpv-product-page .dmvpv-product-description {
  margin: 18px 0 26px;
}

.dmvpv-product-page .dmvpv-product-description p {
  margin: 0 0 13px;
}

.dmvpv-product-page .dmvpv-product-description p:last-child {
  margin-bottom: 0;
}

.dmvpv-product-audio-box {
  margin: 0 0 24px;
  padding: 18px 20px 20px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 20px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.035)),
    radial-gradient(circle at 12% 0%, rgba(139,92,246,.12), transparent 42%),
    radial-gradient(circle at 88% 100%, rgba(34,211,238,.10), transparent 46%);
  box-shadow: 0 14px 38px rgba(0,0,0,.24);
}

.dmvpv-product-offers-box {
  margin: 0 0 22px;
  padding: 18px 20px 20px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 20px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.065), rgba(255,255,255,.028)),
    radial-gradient(circle at 0% 0%, rgba(139,92,246,.10), transparent 44%),
    radial-gradient(circle at 100% 100%, rgba(34,211,238,.08), transparent 48%);
  box-shadow: 0 14px 38px rgba(0,0,0,.20);
}

.dmvpv-product-block-title {
  margin: 0 0 14px;
  color: rgba(255,255,255,.94);
  font-size: 15px;
  line-height: 1.35;
  font-weight: 800;
  letter-spacing: .01em;
}

.dmvpv-product-audio {
  display: block;
  width: 100%;
  margin: 0;
}

.dmvpv-product-audio-box audio {
  display: block;
  width: 100%;
  margin: 0;
}

.dmvpv-product-offers-box .dmvpv-buy-options,
.dmvpv-product-offers-box .dmvpv-buy-options-full,
.dmvpv-product-offers-box .dmvpv-purchase-options,
.dmvpv-product-offers-box .dmvpv-purchase-list,
.dmvpv-product-offers-box .dmvpv-product-purchase {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin: 0;
}

.dmvpv-product-offers-box .dmvpv-buy-option,
.dmvpv-product-offers-box .dmvpv-purchase-option {
  margin: 0;
}

.dmvpv-product-offers-box + .dmvpv-legal-notice,
.dmvpv-product-offers-box + .dmvpv-personal-use-notice {
  margin-top: 0;
}

@media (max-width: 620px) {
  .dmvpv-product-page .dmvpv-product-description {
    margin: 16px 0 22px;
  }

  .dmvpv-product-page .dmvpv-product-description p {
    margin-bottom: 12px;
  }

  .dmvpv-product-audio-box {
    margin-bottom: 20px;
    padding: 16px;
    border-radius: 18px;
  }

  .dmvpv-product-offers-box {
    margin-bottom: 20px;
    padding: 16px;
    border-radius: 18px;
  }

  .dmvpv-product-block-title {
    margin-bottom: 12px;
    font-size: 14px;
  }

  .dmvpv-product-offers-box .dmvpv-buy-options,
  .dmvpv-product-offers-box .dmvpv-buy-options-full,
  .dmvpv-product-offers-box .dmvpv-purchase-options,
  .dmvpv-product-offers-box .dmvpv-purchase-list,
  .dmvpv-product-offers-box .dmvpv-product-purchase {
    gap: 12px;
  }
}


/* Catalog pagination */
.dmvpv-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
  margin: 34px auto 0;
  padding: 16px 18px;
  max-width: 760px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.07), rgba(255,255,255,.035)),
    radial-gradient(circle at 20% 0%, rgba(139,92,246,.12), transparent 45%),
    radial-gradient(circle at 80% 100%, rgba(34,211,238,.10), transparent 48%);
  box-shadow: 0 16px 44px rgba(0,0,0,.24);
}

.dmvpv-pagination[hidden] {
  display: none !important;
}

.dmvpv-page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
}

.dmvpv-page-btn {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  padding: 0 14px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  background: rgba(255,255,255,.07);
  color: var(--dm-text);
  font: inherit;
  font-size: 14px;
  line-height: 1;
  font-weight: 850;
  cursor: pointer;
  transition: transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease, opacity .22s ease;
}

.dmvpv-page-btn:hover:not(:disabled),
.dmvpv-page-btn.active {
  transform: translateY(-2px);
  border-color: rgba(139,92,246,.78);
  background: linear-gradient(135deg, rgba(139,92,246,.98), rgba(34,211,238,.72));
  color: #fff;
  box-shadow: 0 10px 30px rgba(139,92,246,.25), 0 0 44px rgba(34,211,238,.12);
}

.dmvpv-page-btn:disabled {
  opacity: .38;
  cursor: not-allowed;
  transform: none;
  box-shadow: none;
}

.dmvpv-page-prev,
.dmvpv-page-next {
  font-size: 24px;
  font-weight: 650;
  padding-bottom: 2px;
}

.dmvpv-page-dots {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 42px;
  color: var(--dm-muted);
  font-weight: 850;
  letter-spacing: .08em;
}

@media (max-width: 620px) {
  .dmvpv-pagination {
    gap: 8px;
    margin-top: 28px;
    padding: 14px 12px;
    border-radius: 24px;
  }

  .dmvpv-page-numbers {
    gap: 7px;
  }

  .dmvpv-page-btn {
    min-width: 39px;
    height: 39px;
    padding: 0 12px;
    font-size: 13px;
  }

  .dmvpv-page-prev,
  .dmvpv-page-next {
    font-size: 22px;
  }

  .dmvpv-page-dots {
    height: 39px;
  }
}
