.pmr-card { display:flex; flex-direction:column; justify-content:space-between; align-items:flex-start; flex:0 1 300px; max-width:300px; background:#101018; color:#fff; padding:18px; border-radius:14px; box-shadow:0 0 18px rgba(0,0,0,0.6); transition:all 0.3s ease; text-align:left; box-sizing:border-box; height:100%; min-height:460px; }
.pmr-card:hover { transform:translateY(-4px); background:#141420; box-shadow:0 0 25px rgba(146,45,255,0.4); }
.pmr-card.active { transform:translateY(-4px); background:#141420; box-shadow:0 0 25px rgba(146,45,255,0.4); border:1px solid rgba(146,45,255,0.4); transition:all 0.3s ease-in-out; }
.pmr-card.pmr-visible { opacity:1; transform:translateY(0); }

.pmr-card-wrapper { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:24px; justify-content:center; justify-items:center; align-items:stretch; margin:0 auto 0; max-width:1080px; padding:0 16px; box-sizing:border-box; margin-top:0 !important; }

.pmr-cover { position:relative; width:100%; aspect-ratio:1 / 1; overflow:hidden; border-radius:10px; margin-bottom:15px; }
.pmr-cover img { width:100%; height:100%; object-fit:cover; display:block; border-radius:inherit; }

.pmr-play-overlay { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:64px; height:64px; border-radius:50%; border:2px solid #fff; background:rgba(0,0,0,0.4); display:flex; align-items:center; justify-content:center; cursor:pointer; transition:all 0.25s ease-in-out; box-shadow:0 0 8px rgba(0,0,0,0.4); font-size:0; color:transparent; }
.pmr-play-overlay::before { content:""; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:0; height:0; border-left:14px solid #fff; border-top:10px solid transparent; border-bottom:10px solid transparent; transition:all 0.25s ease-in-out; }
.pmr-play-overlay.is-playing::before { width:16px; height:16px; border:none; background:linear-gradient(#fff 0 0) left/40% 100% no-repeat,linear-gradient(#fff 0 0) right/40% 100% no-repeat; background-size:40% 100%; background-repeat:no-repeat; background-position:left,right; }
.pmr-play-overlay:hover { transform:translate(-50%,-50%) scale(1.08); background:rgba(17,17,17,0.45); box-shadow:0 0 0 3px rgba(139,92,246,0.35),0 8px 24px rgba(139,92,246,0.55); }

.pmr-info { display:flex; flex-direction:column; width:100%; text-align:left; margin-top:-8px; margin-bottom:-5px; gap:4px; }
.pmr-meta { display:flex; flex-direction:row; justify-content:space-between; align-items:center; width:100%; flex-wrap:nowrap; gap:8px; }
.pmr-title { flex:1 1 auto; min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; color:#adadad; font-weight:600; transition:color 0.3s ease; }
.pmr-duration { flex:0 0 auto; white-space:nowrap; font-size:13px !important; color:#aaa !important; opacity:0.8 !important; }
.pmr-categories { margin-top:4px; display:flex; flex-wrap:wrap; gap:6px; justify-content:flex-start; padding-bottom:8px; }

.pmr-tags { flex-grow:1; margin-top:10px; margin-bottom:10px; font-size:12px; line-height:1.4; color:#fff; text-align:left; padding-left:10px; display:flex; flex-wrap:wrap; gap:5px; }

.pmr-tag { background:none !important; border:none !important; color:#ccc; font-size:12px; padding:0; margin:0; border-radius:0; white-space:nowrap; font-weight:500; letter-spacing:0.3px; text-transform:none; line-height:1.3; transition:color 0.2s ease, opacity 0.2s ease, transform 0.2s; display:inline-block; }
.pmr-tag-type { color:#922dff !important; }
.pmr-tag-genre { color:#2fc7ff !important; }
.pmr-tag-mood { color:#ff6fa8 !important; }
.pmr-tag:hover { opacity:0.8; transform:scale(1.05); }

.pmr-buttons { display:flex; flex-direction:column; gap:8px; width:100%; margin-top:auto; }
.pmr-buy,.pmr-share { text-align:center; text-decoration:none; border:none; cursor:pointer; transition:0.2s; }
.pmr-buy { background:#922dff; color:#fff; padding:12px; border-radius:8px; text-transform:uppercase; font-weight:600; letter-spacing:0.5px; }
.pmr-buy:hover { background:#7a22cc; }
.pmr-share { background:#333; color:#fff; padding:10px; border-radius:8px; font-size:13px; }
.pmr-share:hover { background:#444; }

@keyframes pmrBlast { 0% { box-shadow:0 0 0 0 rgba(146,45,255,0.8); transform:scale(1); } 50% { box-shadow:0 0 30px 20px rgba(146,45,255,0.4); transform:scale(1.1); } 100% { box-shadow:0 0 0 0 rgba(146,45,255,0); transform:scale(1); } }
.pmr-share.pmr-blast { animation:pmrBlast 0.7s ease-out; background:#922dff; color:#fff; }

.pmr-copied { position:absolute; bottom:10px; left:50%; transform:translateX(-50%); background:rgba(146,45,255,0.9); color:#fff; font-size:13px; padding:5px 10px; border-radius:8px; opacity:0; pointer-events:none; transition:opacity 0.3s ease; z-index:20; }
.pmr-copied.show { opacity:1; }

#pmr-sticky-player { position:fixed; bottom:0; left:0; right:0; background:#181818; border-top:2px solid #922dff; display:none; align-items:center; gap:1rem; padding:0.75rem 1rem; box-shadow:0 -2px 8px rgba(0,0,0,0.4); z-index:9999; color:#fff; }
#pmr-sticky-player img { width:50px; height:50px; object-fit:cover; border-radius:6px; }
#pmr-sticky-player .pmr-track-info { flex:1; display:flex; flex-direction:column; justify-content:center; }
#pmr-sticky-player .pmr-track-title { font-size:15px; font-weight:600; color:#fff; }
#pmr-sticky-player audio { flex:1; max-width:300px; }
#pmr-sticky-player button { background:none; border:none; color:#fff; cursor:pointer; font-size:20px; }
#pmr-sticky-player .pmr-close { font-size:22px; color:#aaa; }
#pmr-sticky-player .pmr-close:hover { color:#fff; }

.pmr-search-wrapper { position:relative; display:flex; justify-content:center; margin:40px 0; margin-bottom:10px !important; }
#pmr-search { width:80%; max-width:420px; padding:10px 38px 10px 14px; border-radius:8px; border:1px solid #922dff; background:#0f1624; color:#adadad; font-size:15px; box-shadow:0 4px 12px rgba(146,45,255,0.2); outline:none; appearance:none; -webkit-appearance:none; position:relative; }
#pmr-search::placeholder { color:#aaa; opacity:0.7; }
#pmr-search:focus { border-color:#b86fff; box-shadow:0 0 10px rgba(146,45,255,0.3); }
#pmr-search::-webkit-search-cancel-button { -webkit-appearance:none; height:16px; width:16px; background:url("data:image/svg+xml;utf8,<svg fill='%23aaa' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path d='M9.41 8l3.29-3.29a1 1 0 10-1.42-1.42L8 6.59 4.71 3.29a1 1 0 10-1.42 1.42L6.59 8l-3.3 3.29a1 1 0 101.42 1.42L8 9.41l3.29 3.3a1 1 0 001.42-1.42z'/></svg>") no-repeat center; cursor:pointer; }

.pmr-filters { display:flex; flex-direction:column; gap:5px; align-items:center; margin-bottom:6px !important; }
.pmr-filter-group { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; align-items:center; margin-bottom:10px !important; }
.pmr-filter-group:last-of-type { margin-bottom:36px; }
.pmr-filter-label { font-weight:600; color:#ccc; margin-right:6px; }
.pmr-filter-group h4,.pmr-filter-group-title,.pmr-filters h3,.pmr-filters h4 { margin:0 0 6px !important; font-size:18px; line-height:1.15 !important; }
.pmr-filter-buttons,.pmr-filter-group .terms,.pmr-filter-group .pmr-terms { margin:0 !important; gap:8px !important; }

.pmr-chip { position:relative; flex:0 0 auto; background:#1a1a1a; color:#fff; border-radius:15px; padding:2px 26px 0 8px; cursor:pointer; font-size:13px; line-height:1; display:inline-flex; align-items:center; justify-content:center; transition:background 0.25s ease,box-shadow 0.25s ease,transform 0.1s ease,color 0.25s ease; user-select:none; height:28px; min-width:10px; box-sizing:border-box; border:1px solid transparent; }
.pmr-chip:hover { background:#2b2b2b; box-shadow:0 0 6px rgba(146,45,255,0.4); transform:scale(1.05); }
.pmr-chip.active { background:#922dff; border-color:#b86fff; box-shadow:0 0 10px rgba(146,45,255,0.6); color:#fff; }
.pmr-chip::after { content:""; position:absolute; right:8px; top:50%; transform:translateY(-50%) scale(0.8); color:#fff; font-size:14px; opacity:0; transition:opacity 0.15s ease,transform 0.15s ease; pointer-events:none; width:10px; }
.pmr-chip.active::after { content:"✓"; opacity:1; transform:translateY(-50%) scale(1); }

.pmr-chip-type { border-color:#922dff; color:#b78aff; }
.pmr-chip-type.active { background:#922dff; color:#fff; box-shadow:0 0 10px rgba(146,45,255,0.5); }
.pmr-chip-genre { border-color:#2fc7ff; color:#5fd7ff; }
.pmr-chip-genre.active { background:#2fc7ff; color:#fff; box-shadow:0 0 10px rgba(47,199,255,0.5); }
.pmr-chip-mood { border-color:#ff6fa8; color:#ff9cc5; }
.pmr-chip-mood.active { background:#ff6fa8; color:#fff; box-shadow:0 0 10px rgba(255,111,168,0.5); }

.pmr-chip.pmr-refresh::after { opacity:1; }
.pmr-chip.pmr-refresh { transform:scale(0.999); }
.pmr-chip.pmr-chip-disabled { opacity:0.35; cursor:not-allowed; pointer-events:auto; box-shadow:none !important; transform:none !important; }
.pmr-chip.pmr-chip-disabled:hover { background:#1a1a1a !important; box-shadow:none !important; transform:none !important; }

.pmr-reset-filters { margin-top:14px; background:transparent; color:#ccc; border:1px dashed #666; padding:6px 16px; border-radius:8px; cursor:pointer; transition:0.25s ease; font-size:14px; position:relative !important; z-index:9999 !important; pointer-events:auto !important; }
.pmr-reset-filters:hover { background:#922dff; color:#fff; border-color:#922dff; }

.pmr-albums-section { max-width:1080px; margin:4px auto 22px !important; padding:0 16px; box-sizing:border-box; }
.pmr-albums-section .pmr-filter-title { margin-bottom:10px; text-align:center; }
.pmr-albums-row { display:flex; justify-content:center; gap:14px; overflow-x:auto; padding:6px 2px 4px; scrollbar-width:none; }
.pmr-albums-row::-webkit-scrollbar { display:none; }
.pmr-album-chip { flex:0 0 auto; width:92px; height:92px; padding:0; background:transparent; border:3px solid rgba(146,45,255,0.18); border-radius:14px; overflow:hidden; cursor:pointer; transition:.25s ease; box-shadow:0 0 0 rgba(146,45,255,0); }
.pmr-album-chip:hover { transform:translateY(-2px); border-color:rgba(146,45,255,0.45); box-shadow:0 0 14px rgba(146,45,255,.18); }
.pmr-album-chip.active { border-color:#922dff; box-shadow:0 0 16px rgba(146,45,255,.35); }
.pmr-album-cover { display:block; width:100%; height:100%; }
.pmr-album-cover img { width:100%; height:100%; object-fit:cover; display:block; }
.pmr-album-name { display:block; font-size:13px; line-height:1.25; font-weight:600; color:#ddd; }

#pmr-pagination,#filter-pagination { display:flex; justify-content:center; flex-wrap:wrap; gap:10px; margin:30px 0 60px; }
.pmr-pagination-btn { background:#1a1a1a; border:1px solid #922dff; color:#b78aff; padding:2px 4px; border-radius:8px; font-size:14px; font-weight:600; cursor:pointer; transition:0.25s ease; min-width:36px; text-align:center; }
.pmr-pagination-btn:hover { background:#922dff; color:#fff; box-shadow:0 0 10px rgba(146,45,255,0.5); transform:translateY(-2px); }
.pmr-pagination-btn.active { background:#922dff; color:#fff; border-color:#b78aff; box-shadow:0 0 10px rgba(146,45,255,0.5); }
.pmr-pagination-btn:disabled { opacity:0.4; cursor:default; transform:none; box-shadow:none; }

@media (max-width:700px) { .pmr-filter-section { overflow:hidden; position:relative; width:100%; margin-bottom:6px; } .pmr-filter-title { font-size:13px; opacity:0.8; margin-left:6px; margin-bottom:3px; text-align:left; } .pmr-filter-group { display:flex; flex-wrap:nowrap; overflow-x:auto; gap:6px; padding:4px 4px 6px; scroll-snap-type:x mandatory; scrollbar-width:none; justify-content:flex-start; } .pmr-filter-group::-webkit-scrollbar { display:none; } .pmr-chip { flex-shrink:0; scroll-snap-align:start; } .pmr-filter-section::before,.pmr-filter-section::after { display:none !important; content:none !important; } }

@media (max-width:768px) { .pmr-albums-section { padding:0 10px; } .pmr-albums-row { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; overflow-x:visible; padding:6px 0; } .pmr-album-chip { width:72px; height:72px; border-radius:12px; } .pmr-filters { gap:0 !important; } .pmr-filter-group { margin:0 0 2px !important; } .pmr-filter-group-title,.pmr-filters h4 { margin:0 0 2px !important; font-size:14px; } .pmr-filter-buttons { margin:0 !important; gap:6px !important; } #pmr-pagination,#pmr-pagination-bottom,#filter-pagination { display:flex !important; flex-wrap:nowrap !important; justify-content:flex-start !important; align-items:center !important; width:100% !important; max-width:100% !important; overflow-x:auto !important; overflow-y:hidden !important; white-space:nowrap !important; gap:6px !important; padding:6px 10px !important; margin:0 !important; box-sizing:border-box !important; scrollbar-width:none; -webkit-overflow-scrolling:touch; } #pmr-pagination::-webkit-scrollbar,#pmr-pagination-bottom::-webkit-scrollbar,#filter-pagination::-webkit-scrollbar { display:none; } #pmr-pagination > *,#pmr-pagination-bottom > *,#filter-pagination > * { flex:0 0 auto !important; } #pmr-pagination button,#pmr-pagination-bottom button,#filter-pagination button,#pmr-pagination a,#pmr-pagination-bottom a,#filter-pagination a { flex:0 0 auto !important; white-space:nowrap !important; } }

#pmr-mini-cart.pmr-mini-cart-overlay { position:fixed; inset:0; display:none; align-items:stretch; justify-content:flex-start; background:rgba(0,0,0,0.42); backdrop-filter:blur(3px); z-index:99999; }
#pmr-mini-cart.pmr-mini-cart-overlay[style*="display: flex"] { display:flex !important; }
#pmr-mini-cart .pmr-mini-cart-panel { width:min(420px,92vw); max-width:420px; height:100vh; background:linear-gradient(180deg,#08142b 0%,#051022 100%); color:#f4f1ea; box-shadow:12px 0 40px rgba(0,0,0,0.35); position:relative; display:flex; flex-direction:column; overflow:hidden; padding:64px 0 0; box-sizing:border-box; }
#pmr-mini-cart .pmr-mini-cart-close { position:absolute; top:14px; right:14px; width:40px; height:40px; border:0; border-radius:999px; background:rgba(255,255,255,0.1); color:#fff; font-size:24px; line-height:1; display:inline-flex; align-items:center; justify-content:center; cursor:pointer; z-index:3; transition:background 0.2s ease,transform 0.2s ease; }
#pmr-mini-cart .pmr-mini-cart-close:hover { background:rgba(255,255,255,0.16); transform:scale(1.04); }
#pmr-mini-cart .pmr-mini-cart-content { flex:1 1 auto; min-height:0; overflow-y:auto; overflow-x:hidden; padding:0 18px 18px; box-sizing:border-box; }
#pmr-mini-cart .pmr-mini-cart-content::-webkit-scrollbar { width:10px; }
#pmr-mini-cart .pmr-mini-cart-content::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.14); border-radius:20px; }
#pmr-mini-cart .pmr-mini-cart-content::-webkit-scrollbar-track { background:transparent; }

#pmr-mini-cart .widget_shopping_cart_content { display:flex; flex-direction:column; min-height:100%; }
#pmr-mini-cart .woocommerce-mini-cart.cart_list { list-style:none; margin:0; padding:0; }

#pmr-mini-cart .woocommerce-mini-cart-item { position:relative; display:grid !important; grid-template-columns:1fr 32px !important; grid-template-rows:auto auto !important; column-gap:12px !important; row-gap:8px !important; align-items:start !important; margin:0 0 14px 0; padding:14px; background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.07); border-radius:18px; box-sizing:border-box; }

#pmr-mini-cart .woocommerce-mini-cart-item > a.remove { position:absolute !important; top:10px; right:10px; left:auto !important; width:28px !important; height:28px !important; min-width:28px !important; margin:0 !important; border-radius:999px !important; background:rgba(255,255,255,0.1); color:#fff !important; text-decoration:none; display:inline-flex !important; align-items:center !important; justify-content:center !important; font-size:16px !important; line-height:1 !important; z-index:2; grid-column:2 !important; grid-row:1 !important; justify-self:end !important; align-self:start !important; }

#pmr-mini-cart .woocommerce-mini-cart-item > a:not(.remove) { grid-column:1 !important; grid-row:1 !important; display:grid !important; grid-template-columns:72px minmax(0,1fr) !important; gap:14px !important; align-items:center !important; min-width:0 !important; margin:0 !important; text-decoration:none !important; color:#fff !important; font-size:16px !important; font-weight:700 !important; line-height:1.2 !important; white-space:normal !important; overflow:visible !important; }
#pmr-mini-cart .woocommerce-mini-cart-item > a:not(.remove) > img { width:72px !important; height:72px !important; min-width:72px !important; max-width:72px !important; object-fit:cover !important; border-radius:12px !important; margin:0 !important; float:none !important; flex:0 0 72px !important; grid-column:1 !important; display:block; }

#pmr-mini-cart .woocommerce-mini-cart-item > .quantity { grid-column:1 !important; grid-row:2 !important; margin:0 0 0 86px !important; font-size:14px !important; line-height:1.35 !important; color:rgba(255,255,255,.82) !important; display:block; }

#pmr-mini-cart .woocommerce-mini-cart__total.total { display:flex; justify-content:space-between; align-items:center; gap:14px; margin:6px 0 0; padding:18px 0 10px; border-top:1px solid rgba(255,255,255,0.08); color:#f7f4ee; font-size:18px; font-weight:700; }
#pmr-mini-cart .woocommerce-mini-cart__total.total strong,#pmr-mini-cart .woocommerce-mini-cart__total.total .amount { color:#f7f4ee; }

#pmr-mini-cart .woocommerce-mini-cart__buttons.buttons { display:grid; grid-template-columns:1fr; gap:12px; margin:0; padding:8px 0 0; }
#pmr-mini-cart .woocommerce-mini-cart__buttons.buttons a { display:flex; align-items:center; justify-content:center; width:100%; min-height:52px; padding:0 16px; border-radius:16px; text-decoration:none; text-align:center; font-size:16px; font-weight:700; box-sizing:border-box; transition:transform 0.2s ease,filter 0.2s ease,background 0.2s ease; }
#pmr-mini-cart .woocommerce-mini-cart__buttons.buttons a:first-child { background:rgba(255,255,255,0.08); color:#f7f4ee; border:1px solid rgba(255,255,255,0.12); }
#pmr-mini-cart .woocommerce-mini-cart__buttons.buttons a:last-child { background:linear-gradient(180deg,#c7baa0 0%,#b7aa8f 100%); color:#171717; border:none; }
#pmr-mini-cart .woocommerce-mini-cart__buttons.buttons a:hover { transform:translateY(-1px); filter:brightness(1.03); }

#pmr-mini-cart .woocommerce-mini-cart__empty-message { margin:0; padding:30px 0; text-align:center; color:rgba(247,244,238,0.72); }

@media (max-width:480px) { #pmr-mini-cart .pmr-mini-cart-panel { width:92vw; padding-top:58px; } #pmr-mini-cart .pmr-mini-cart-content { padding-left:14px; padding-right:14px; } #pmr-mini-cart .woocommerce-mini-cart-item { grid-template-columns:1fr 32px !important; gap:12px; padding:12px; border-radius:16px; } #pmr-mini-cart .woocommerce-mini-cart-item > a:not(.remove) { grid-template-columns:60px minmax(0,1fr) !important; font-size:15px !important; } #pmr-mini-cart .woocommerce-mini-cart-item > a:not(.remove) > img { width:60px !important; height:60px !important; min-width:60px !important; max-width:60px !important; } #pmr-mini-cart .woocommerce-mini-cart-item > .quantity { margin-left:72px !important; } #pmr-mini-cart .woocommerce-mini-cart__buttons.buttons a { min-height:48px; font-size:15px; } }