.svs-showroom{
  --svs-cols:4;--svs-cols-tablet:3;--svs-cols-mobile:2;
  --svs-gap-x:18px;--svs-gap-y:18px;--svs-card-radius:12px;--svs-border-width:1px;
  --svs-card-bg:#fff;--svs-page-bg:#fff;--svs-border-color:#e2e5e6;--svs-text-color:#292929;
  --svs-price-color:#292929;--svs-accent-color:#007782;--svs-accent-hover:#005c62;
  --svs-button-bg:#fff;--svs-button-hover-bg:#f2fbfb;--svs-image-bg:#f4f5f5;
  --svs-body-padding:12px;--svs-button-radius:8px;--svs-hover-lift:2px;--svs-text-align:left;
  --svs-title-size:15px;--svs-price-size:15px;--svs-button-size:14px;
  display:grid;grid-template-columns:repeat(var(--svs-cols),minmax(0,1fr));
  column-gap:var(--svs-gap-x);row-gap:var(--svs-gap-y);margin:20px 0;padding-left:var(--svs-page-padding-desktop,24px);padding-right:var(--svs-page-padding-desktop,24px);box-sizing:border-box;background:var(--svs-page-bg);
}
.svs-card{min-width:0;background:var(--svs-card-bg);border:var(--svs-border-width) solid var(--svs-border-color);border-radius:var(--svs-card-radius);overflow:hidden;transition:transform .16s ease,box-shadow .16s ease}
.svs-card:hover{transform:translateY(calc(-1 * var(--svs-hover-lift)));box-shadow:0 8px 24px rgba(0,0,0,.08)}
.svs-image{display:block;aspect-ratio:3/4;background:var(--svs-image-bg);overflow:hidden}
.svs-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s ease}
.svs-card:hover .svs-image img{transform:scale(1.015)}
.svs-body{padding:var(--svs-body-padding);text-align:var(--svs-text-align)}
.svs-body h3{font-size:var(--svs-title-size)!important;line-height:1.35;margin:0 0 7px;font-weight:500}
.svs-body h3 a{color:var(--svs-text-color);text-decoration:none}
.svs-price{font-size:var(--svs-price-size)!important;font-weight:700;color:var(--svs-price-color);margin-bottom:11px}
.svs-price del{font-weight:400;opacity:.55}.svs-price ins{text-decoration:none}
.svs-showroom .svs-cta{display:inline-flex!important;align-items:center;justify-content:center;min-height:40px;padding:8px 14px!important;border:1px solid var(--svs-accent-color)!important;border-radius:var(--svs-button-radius)!important;background:var(--svs-button-bg)!important;color:var(--svs-accent-color)!important;font-weight:650!important;font-size:var(--svs-button-size)!important;text-decoration:none!important;box-shadow:none!important}
.svs-showroom[data-button-align="left"] .svs-cta{margin-left:0;margin-right:auto}.svs-showroom[data-button-align="center"] .svs-cta{display:flex!important;width:max-content;margin-left:auto;margin-right:auto}.svs-showroom[data-button-align="right"] .svs-cta{display:flex!important;width:max-content;margin-left:auto;margin-right:0}.svs-showroom[data-button-align="stretch"] .svs-cta{display:flex!important;width:100%;box-sizing:border-box}
.svs-showroom .svs-cta:hover{background:var(--svs-button-hover-bg)!important;color:var(--svs-accent-hover)!important;border-color:var(--svs-accent-hover)!important}
@media(max-width:980px){.svs-showroom{grid-template-columns:repeat(var(--svs-cols-tablet),minmax(0,1fr))}}
@media(max-width:720px){.svs-showroom{grid-template-columns:repeat(var(--svs-cols-mobile),minmax(0,1fr))}}
@media(max-width:420px){.svs-body{padding:calc(var(--svs-body-padding) * .8)}.svs-cta{width:100%}}

.svs-buyer-total{font-size:var(--svs-buyer-total-size,12px)!important;color:var(--svs-buyer-cost-color,#626262);margin-top:3px;line-height:1.35}
.svs-buyer-total span{font-size:inherit;color:inherit}
.svs-buyer-note{font-size:var(--svs-buyer-note-size,12px)!important;color:var(--svs-buyer-cost-color,#626262);margin-top:5px;line-height:1.35}


/* v0.12: consistent vertical alignment of cards/buttons */
.svs-showroom .svs-card{
    display:flex;
    flex-direction:column;
}
.svs-showroom .svs-body{
    display:flex;
    flex-direction:column;
    flex:1 1 auto;
}
.svs-showroom .svs-cta{
    margin-top:var(--svs-button-margin-top,12px)!important;
    margin-bottom:var(--svs-button-margin-bottom,0)!important;
}
.svs-showroom .svs-buyer-note{
    margin-top:auto;
    padding-top:8px;
}
.svs-showroom .svs-buyer-total + .svs-buyer-note{
    margin-top:auto;
}

@media (max-width:520px){
    .svs-showroom .svs-body h3,
    .svs-showroom .svs-body h3 a{
        font-size:var(--svs-mobile-title-size,14px)!important;
    }
    .svs-showroom .svs-price,
    .svs-showroom .svs-price *{
        font-size:var(--svs-mobile-price-size,14px)!important;
    }
    .svs-showroom .svs-buyer-total,
    .svs-showroom .svs-buyer-total *{
        font-size:var(--svs-mobile-buyer-total-size,11px)!important;
    }
    .svs-showroom .svs-buyer-note,
    .svs-showroom .svs-buyer-note *{
        font-size:var(--svs-mobile-buyer-note-size,10px)!important;
        line-height:1.3;
    }
    .svs-showroom .svs-cta{
        font-size:var(--svs-mobile-button-size,13px)!important;
    }
}


/* v0.14: equal-height cards with fixed top/bottom content zones */
.svs-showroom{
    align-items:stretch;
}
.svs-showroom .svs-card{
    height:100%;
    display:flex;
    flex-direction:column;
}
.svs-showroom .svs-body{
    flex:1 1 auto;
    display:flex;
    flex-direction:column;
    min-height:0;
}
.svs-showroom .svs-body h3{
    margin-top:0;
}
.svs-showroom .svs-price,
.svs-showroom .svs-buyer-total{
    flex:0 0 auto;
}

/* Push the notice/button block to the bottom of every card. */
.svs-showroom .svs-buyer-note{
    margin-top:auto !important;
    padding-top:12px;
}
.svs-showroom .svs-buyer-note + .svs-cta{
    margin-top:var(--svs-button-margin-top,12px)!important;
}

/* If no buyer notice is shown, the button itself becomes the bottom anchor. */
.svs-showroom .svs-buyer-total + .svs-cta,
.svs-showroom .svs-price + .svs-cta,
.svs-showroom h3 + .svs-cta{
    margin-top:auto !important;
}

/* Keep the call-to-action at the bottom edge consistently. */
.svs-showroom .svs-cta{
    flex:0 0 auto;
}

@media(max-width:720px){
  .svs-showroom{
    padding-left:var(--svs-page-padding-mobile,12px);
    padding-right:var(--svs-page-padding-mobile,12px);
  }
}

/* v0.18: configurable hover shadow / glow */
.svs-showroom .svs-card:hover{
    box-shadow:
        0 0 var(--svs-hover-shadow-blur,18px)
        var(--svs-hover-shadow-spread,0px)
        color-mix(
            in srgb,
            var(--svs-hover-shadow-color,#000000) calc(var(--svs-hover-shadow-opacity,.18) * 100%),
            transparent
        ) !important;
}

/* v1.11.7: storefront filters and configurable sold-state presentation */
.svs-showroom-shell{width:100%}
.svs-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:0 0 14px;padding:14px 16px;border:1px solid #e2e5e6;border-radius:12px;background:#fff}
.svs-filters label{display:flex;flex-direction:column;gap:6px;min-width:150px;font-size:12px;font-weight:650;color:#475569}
.svs-filters .svs-filter-search{flex:1 1 230px}
.svs-filters input,.svs-filters select{width:100%;min-height:40px;padding:7px 10px;border:1px solid #cfd6df;border-radius:8px;background:#fff;color:#172033;font:inherit;font-weight:400}
.svs-image-wrap{position:relative}
.svs-sold-badge{position:absolute;z-index:2;top:10px;left:10px;display:inline-flex;align-items:center;padding:6px 9px;border-radius:var(--svs-sold-badge-radius,999px);background:var(--svs-sold-badge-bg,#141920);color:var(--svs-sold-badge-text,#fff);font-size:11px;font-weight:800;letter-spacing:.05em;line-height:1}
.svs-card[data-sold-position="top-right"] .svs-sold-badge{left:auto;right:10px;top:10px;bottom:auto}
.svs-card[data-sold-position="bottom-left"] .svs-sold-badge{left:10px;right:auto;top:auto;bottom:10px}
.svs-card[data-sold-position="bottom-right"] .svs-sold-badge{left:auto;right:10px;top:auto;bottom:10px}
.svs-card.is-sold:not(.svs-no-image-dim) .svs-image img{filter:saturate(.72);opacity:var(--svs-sold-image-opacity,.88)}
.svs-card.is-sold:not(.svs-no-content-dim) .svs-body h3,.svs-card.is-sold:not(.svs-no-content-dim) .svs-price{opacity:var(--svs-sold-content-opacity,.68)}
.svs-showroom .svs-sold-status,.svs-showroom .svs-sold-status:hover{cursor:default!important;pointer-events:none!important;background:var(--svs-sold-button-bg,#f2f4f7)!important;color:var(--svs-sold-button-text,#667085)!important;border-color:var(--svs-sold-button-border,#d0d5dd)!important;transform:none!important;box-shadow:none!important}
.svs-card[hidden]{display:none!important}
@media(max-width:620px){.svs-filters{padding:12px}.svs-filters label{flex:1 1 100%;min-width:0}}


/* v1.11.9: customizable new-item badge */
.svs-new-badge{position:absolute;z-index:2;top:10px;right:10px;display:inline-flex;align-items:center;padding:6px 9px;border-radius:var(--svs-new-badge-radius,999px);background:var(--svs-new-badge-bg,#007782);color:var(--svs-new-badge-text,#fff);font-size:11px;font-weight:800;letter-spacing:.05em;line-height:1}
.svs-card[data-new-position="top-left"] .svs-new-badge{left:10px;right:auto;top:10px;bottom:auto}
.svs-card[data-new-position="top-right"] .svs-new-badge{left:auto;right:10px;top:10px;bottom:auto}
.svs-card[data-new-position="bottom-left"] .svs-new-badge{left:10px;right:auto;top:auto;bottom:10px}
.svs-card[data-new-position="bottom-right"] .svs-new-badge{left:auto;right:10px;top:auto;bottom:10px}
.svs-new-badge[hidden]{display:none!important}

/* v1.11.11: filter controls */
.svs-filter-clear{min-height:40px;padding:7px 12px;border:1px solid #cfd6df;border-radius:8px;background:#f8fafc;color:#334155;font:inherit;font-weight:650;cursor:pointer}
.svs-filter-clear:hover{background:#f1f5f9;border-color:#b8c2cf}
.svs-filter-empty{margin:14px 0;padding:16px;border:1px dashed #cbd5e1;border-radius:10px;background:#f8fafc;color:#64748b;text-align:center}
@media(max-width:620px){.svs-filter-clear{width:100%}}

/* 1.15.1 Preview Mode */
.svs-preview-license-notice{display:flex;align-items:flex-start;gap:12px;margin:0 0 20px;padding:16px 18px;border:1px solid #b8dddd;border-radius:12px;background:#f2fbfb}
.svs-preview-license-notice>.dashicons{flex:0 0 24px;margin-top:1px;color:#007782;font-size:22px}
.svs-preview-license-notice strong{display:block;margin-bottom:4px}
.svs-preview-license-notice p{margin:0;line-height:1.5;color:#536366}
.svs-preview-inline{display:flex;align-items:center;gap:8px;margin:0 0 16px;padding:10px 13px;border-radius:9px;background:#f2fbfb;color:#315d61;font-size:13px;font-weight:600}
.svs-preview-inline .dashicons{color:#007782}


/* 1.15.3 Preview messaging */
.svs-preview-hero{
  display:flex;
  align-items:flex-start;
  gap:18px;
  margin:0 0 24px;
  padding:22px 24px;
  border:2px solid #007782;
  border-radius:14px;
  background:linear-gradient(180deg,#f4ffff 0%,#eef9f9 100%);
  box-shadow:0 8px 24px rgba(0,119,130,.08);
}
.svs-preview-hero__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 48px;
  width:48px;
  height:48px;
  border-radius:12px;
  background:#007782;
}
.svs-preview-hero__icon .dashicons{
  width:26px;
  height:26px;
  font-size:26px;
  color:#fff;
}
.svs-preview-hero__content{min-width:0}
.svs-preview-hero__eyebrow,
.svs-license-purchase-box__eyebrow{
  display:block;
  margin-bottom:6px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#007782;
}
.svs-preview-hero h2,
.svs-license-purchase-box h2{
  margin:0 0 8px;
  font-size:22px;
  line-height:1.25;
}
.svs-preview-hero p,
.svs-license-purchase-box p{
  max-width:850px;
  margin:0;
  font-size:14px;
  line-height:1.6;
  color:#4d5f61;
}
.svs-preview-hero__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  margin-top:16px;
}
.svs-preview-hero__hint{
  font-size:13px;
  color:#536366;
}
.svs-preview-license-link,
.svs-buy-license-button{
  min-height:38px;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
}
.svs-license-purchase-box{
  display:flex;
  align-items:flex-start;
  gap:18px;
  margin:18px 0 24px;
  padding:20px 22px;
  border:1px solid #d7dfdf;
  border-radius:14px;
  background:#fff;
  box-shadow:0 6px 20px rgba(0,0,0,.04);
}
.svs-license-purchase-box__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 44px;
  width:44px;
  height:44px;
  border-radius:11px;
  background:#f2fbfb;
}
.svs-license-purchase-box__icon .dashicons{
  width:24px;
  height:24px;
  font-size:24px;
  color:#007782;
}
.svs-license-purchase-box__content{min-width:0}
.svs-buy-license-button{margin-top:14px}
@media (max-width:782px){
  .svs-preview-hero,
  .svs-license-purchase-box{padding:18px;gap:14px}
  .svs-preview-hero__icon,
  .svs-license-purchase-box__icon{flex-basis:40px;width:40px;height:40px}
  .svs-preview-hero h2,
  .svs-license-purchase-box h2{font-size:18px}
}


/* 1.15.4 Backend button radius normalization
   Covers native buttons, WordPress .button variants, submit/reset inputs,
   and plugin controls styled as buttons. */
.svs-admin button,
.svs-admin .button,
.svs-admin .button-primary,
.svs-admin .button-secondary,
.svs-admin input[type="button"],
.svs-admin input[type="submit"],
.svs-admin input[type="reset"],
.svs-admin a.button,
.svs-admin .svs-tab,
.svs-admin .svs-filter-clear,
.svs-admin .svs-preview-license-link,
.svs-admin .svs-buy-license-button {
  border-radius: 8px !important;
}
