/* FATSAW compact music catalogue rebuilt independently from theme product cards */
body.fsw-music-grid ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
  margin:22px 0 40px!important;
}
body.fsw-music-grid ul.products:before,
body.fsw-music-grid ul.products:after{display:none!important}
body.fsw-music-grid ul.products>li.fsw-catalog-item{
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  float:none!important;
  clear:none!important;
  min-width:0!important;
  list-style:none!important;
}
.fsw-catalog-card{
  background:#091017;
  border:1px solid #26343e;
  overflow:hidden;
}
.fsw-catalog-cover-link{display:block!important;text-decoration:none!important}
.fsw-catalog-cover{
  display:block!important;
  width:100%!important;
  aspect-ratio:1/1;
  height:auto!important;
  object-fit:cover!important;
  opacity:1!important;
  visibility:visible!important;
}
.fsw-catalog-meta{padding:9px 9px 8px}
.fsw-catalog-title{
  display:block;
  color:#f0f4f7!important;
  text-decoration:none!important;
  font-family:'Rajdhani',sans-serif;
  font-size:14px;
  font-weight:700;
  line-height:1.15;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.fsw-catalog-price{
  display:block!important;
  margin-top:5px!important;
  font-size:11px!important;
  line-height:1.1!important;
  color:#ff6a00!important;
  min-width:0!important;
}
.fsw-catalog-actions{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  margin-top:7px!important;
  flex-wrap:wrap!important;
}
.fsw-album-buy-button,
.fsw-grid-play{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  height:30px!important;
  max-height:30px!important;
  margin:0!important;
  padding:0 10px!important;
  border-radius:3px!important;
  box-shadow:none!important;
  line-height:28px!important;
  font-family:'IBM Plex Mono',monospace!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  white-space:nowrap!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.fsw-album-buy-button{
  border:1px solid #ff6a00!important;
  background:#15110e!important;
  color:#ff7a1a!important;
}
.fsw-album-buy-button:hover{background:#ff6a00!important;color:#071018!important}
.fsw-grid-play{
  border:1px solid #33424d!important;
  background:#0b141b!important;
  color:#eef3f6!important;
  gap:4px!important;
}

.fsw-grid-play-icon{color:#ff6a00;font-size:11px}
.fsw-grid-play.is-loading{font-size:0}
.fsw-grid-play.is-loading:after{
  content:"";
  width:16px;height:16px;
  border:2px solid rgba(255,255,255,.3);
  border-top-color:#ff6a00;
  border-radius:50%;
  animation:fswspin .7s linear infinite;
}
@keyframes fswspin{to{transform:rotate(360deg)}}

.fsw-grid-mini-player[hidden]{display:none!important}
.fsw-grid-mini-player{
  position:fixed;left:0;right:0;bottom:0;z-index:2147483000;
  background:rgba(5,10,14,.98);border-top:1px solid #33424d;color:#fff;
  box-shadow:0 -10px 30px rgba(0,0,0,.38);
}
.fsw-grid-mini-inner{
  min-height:70px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;
  gap:10px;align-items:center;padding:8px 12px;
}
.fsw-grid-mini-cover{width:48px;height:48px;object-fit:cover;border:1px solid #26343e}
.fsw-grid-mini-meta{min-width:0}
.fsw-grid-mini-track{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fsw-grid-mini-album{margin-top:3px;font-family:'IBM Plex Mono',monospace;font-size:8px;color:#8a99a4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fsw-grid-mini-controls{display:flex;align-items:center;gap:5px}
.fsw-grid-mini-controls button{width:32px;height:32px;border-radius:50%;border:1px solid #33424d;background:#0b141b;color:#fff;cursor:pointer}
.fsw-grid-mini-controls .fsw-mini-main{width:40px;height:40px;background:#ff6a00;border-color:#ff6a00;color:#071018}
@font-face{
  font-family:'fwdrap-icon';
  src:url('https://fatsaw.com/wp-content/plugins/fwdrap/css/fonts/fwdrap-icon.woff?edh9nz') format('woff');
  font-weight:normal;
  font-style:normal;
  font-display:block;
}
.fsw-grid-mini-controls .fsw-mini-cart{
  width:36px!important;
  min-width:36px!important;
  padding:0!important;
  border-radius:50%!important;
  background:#13202a!important;
  border-color:#415563!important;
  font-size:14px!important;
}
.fsw-grid-mini-controls .fsw-mini-cart .fwdrap-icon-cart{
  font-family:'fwdrap-icon'!important;
  font-style:normal!important;
  font-weight:normal!important;
  line-height:1!important;
  -webkit-font-smoothing:antialiased;
}
.fsw-grid-mini-controls .fsw-mini-cart .fwdrap-icon-cart:before{
  content:'\e904';
  font-size:19px!important;
  position:relative;
  top:-1px;
  color:#fff!important;
}
.fsw-old-cart-icon{display:block!important;width:19px!important;height:19px!important;fill:#fff!important;color:#fff!important}
.fsw-grid-mini-controls .fsw-mini-cart:disabled{opacity:1!important;cursor:not-allowed}
.fsw-grid-mini-controls .fsw-mini-cart:disabled .fsw-old-cart-icon{fill:#fff!important;opacity:1!important}

.fsw-format-picker{position:fixed;inset:0;z-index:2147483645;background:rgba(0,0,0,.72);display:flex;align-items:center;justify-content:center;padding:18px}
.fsw-format-dialog{position:relative;width:min(430px,100%);display:grid;grid-template-columns:92px 1fr;gap:16px;align-items:center;background:#081017;border:1px solid #33424d;border-radius:12px;padding:18px;box-shadow:0 22px 70px rgba(0,0,0,.55)}
.fsw-format-image{width:92px;height:92px;object-fit:cover;border:1px solid #26343e}
.fsw-format-copy{min-width:0}
.fsw-format-copy>span{display:block;color:#ff6a00;font:700 9px/1.2 'IBM Plex Mono',monospace;letter-spacing:.08em;margin-bottom:5px}
.fsw-format-copy>strong{display:block;color:#fff;font-size:18px;line-height:1.2;margin-bottom:12px}
.fsw-format-options{display:flex;gap:8px;flex-wrap:wrap}
.fsw-format-options button{appearance:none;border:1px solid #ff6a00;background:#15110e;color:#ff7a1a;border-radius:4px;padding:8px 10px;font:700 10px/1 'IBM Plex Mono',monospace;cursor:pointer}
.fsw-format-options button:hover{background:#ff6a00;color:#071018}
.fsw-format-close{position:absolute;top:8px;right:9px;width:28px;height:28px;border:0;background:transparent;color:#fff;font-size:22px;cursor:pointer}
@media(max-width:560px){.fsw-format-dialog{grid-template-columns:70px 1fr;padding:14px}.fsw-format-image{width:70px;height:70px}.fsw-format-copy>strong{font-size:16px}.fsw-format-options button{font-size:9px;padding:8px}}
.fsw-grid-mini-progress{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:center;padding:0 2px 2px}
.fsw-grid-mini-progress span{font-family:'IBM Plex Mono',monospace;font-size:7px;color:#83919a}
.fsw-grid-mini-progress input{width:100%;accent-color:#ff6a00}
body.fsw-grid-player-open{padding-bottom:96px!important}

@media(max-width:760px){
  body.fsw-music-grid .content-wrapper{padding-left:12px!important;padding-right:12px!important}
  body.fsw-music-grid ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    margin-top:14px!important;
  }
  .fsw-catalog-meta{padding:7px 7px 7px!important}
  .fsw-catalog-title{font-size:11px!important}
  .fsw-catalog-price{
    display:block!important;
    margin-top:4px!important;
    font-size:9px!important;
    white-space:nowrap!important;
  }
  .fsw-catalog-price .woocommerce-price-suffix{font-size:7px!important}
  .fsw-catalog-actions{
    display:flex!important;
    gap:4px!important;
    margin-top:6px!important;
    flex-wrap:nowrap!important;
  }
  .fsw-album-buy-button,
  .fsw-grid-play{
    width:auto!important;
    min-width:0!important;
    min-height:0!important;
    height:18px!important;
    max-height:18px!important;
    margin:0!important;
    padding:0 4px!important;
    line-height:16px!important;
    font-size:5px!important;
    letter-spacing:0!important;
  }
  .fsw-grid-play-icon{font-size:7px!important}
  body.fsw-music-grid .woocommerce-result-count,
  body.fsw-music-grid .woocommerce-ordering{font-size:10px!important}
}