/* BDAW WP Commerce 1.4.0 — the software showcase: catalog, search, product pages, slideshow.
   Layout only. Colours, fonts and buttons come from the theme: currentColor, the theme's own
   variables when it has them (--line, --gold, --accent, WordPress presets), plain fallbacks otherwise. */

.bdaw-shop-catalog,.bdaw-shop-product{--shop-line:var(--line,color-mix(in srgb,currentColor 18%,transparent));--shop-soft:color-mix(in srgb,currentColor 6%,transparent);--shop-accent:var(--gold,var(--accent,var(--wp--preset--color--primary,#2271b1)));--shop-muted:color-mix(in srgb,currentColor 70%,transparent)}
.bdaw-shop-catalog > *,.bdaw-shop-product > *{margin-top:0}

/* ---- search ---- */
.bdaw-shop-search{--shop-line:var(--line,color-mix(in srgb,currentColor 18%,transparent));position:relative; display:flex; align-items:stretch; gap:0; max-width:44rem; margin:0 0 1rem; border:1px solid var(--shop-line); border-radius:6px; background:var(--shop-soft,transparent)}
.bdaw-shop-search__mag{width:1.15rem; height:1.15rem; align-self:center; margin:0 .2rem 0 .85rem; opacity:.6; flex:none}
.bdaw-shop-search input[type=search]{flex:1 1 auto; min-width:0; min-height:3rem; border:0; background:transparent; color:inherit; font:inherit; padding:.6rem .75rem; outline:none}
.bdaw-shop-search button{flex:none; min-height:3rem; padding:0 1.2rem; border:0; border-left:1px solid var(--shop-line); background:transparent; color:inherit; font:600 .95rem/1 inherit; cursor:pointer; border-radius:0 6px 6px 0}
.bdaw-shop-search:focus-within{border-color:var(--gold,var(--accent,currentColor))}
.bdaw-shop-search__results{position:absolute; z-index:50; left:-1px; right:-1px; top:calc(100% + 4px); margin:0; padding:.3rem; list-style:none; border:1px solid var(--shop-line); border-radius:6px; background:var(--bg,var(--wp--preset--color--base,Canvas)); color:var(--fg,var(--wp--preset--color--contrast,CanvasText)); box-shadow:0 12px 32px rgba(0,0,0,.25)}
.bdaw-shop-search__results a{display:flex; gap:.7rem; align-items:center; padding:.55rem .6rem; border-radius:4px; color:inherit; text-decoration:none}
.bdaw-shop-search__results a:hover,.bdaw-shop-search__results a[aria-selected=true]{background:color-mix(in srgb,currentColor 9%,transparent)}
.bdaw-shop-search__results b{display:block; font-weight:600}
.bdaw-shop-search__results small{display:block; opacity:.75; line-height:1.35}
.bdaw-shop-search__results .is-all{justify-content:center; font-size:.9em; opacity:.85}
.bdaw-shop-search__results .is-none{padding:.6rem; opacity:.75}

/* ---- filters, count ---- */
.bdaw-shop-filter{display:flex; flex-wrap:wrap; gap:.45rem; margin:0 0 .8rem}
.bdaw-shop-filter button{padding:.4rem .85rem; border:1px solid var(--shop-line); border-radius:999px; background:transparent; color:inherit; font:500 .85rem/1.2 inherit; cursor:pointer}
.bdaw-shop-filter button.is-on{background:var(--shop-accent); border-color:var(--shop-accent); color:var(--on-accent,#fff)}
.bdaw-shop-count{margin:0 0 1rem; font-size:.9em; color:var(--shop-muted)}
.bdaw-shop-empty{opacity:.8}

/* ---- cards ---- */
.bdaw-shop-cards{display:grid; gap:1rem; grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr))}
.bdaw-shop-card{display:grid; align-content:start; gap:.6rem; padding:1.1rem 1.2rem 1.2rem; border:1px solid var(--shop-line); border-radius:6px; min-width:0}
.bdaw-shop-card > *{margin:0}
.bdaw-shop-card[hidden]{display:none}
.bdaw-shop-card__shot{display:block; margin:-1.1rem -1.2rem .2rem; border-bottom:1px solid var(--shop-line); line-height:0; overflow:hidden; border-radius:6px 6px 0 0}
.bdaw-shop-card__shot .bdaw-repo-art{border:0; border-radius:0; margin:0}
.bdaw-shop-card__head{display:flex; align-items:center; gap:.2rem}
.bdaw-shop-card__head .eyebrow{margin:0}
.bdaw-shop-card__name{margin:0; font-size:1.25rem; line-height:1.2}
.bdaw-shop-card__name a{color:inherit; text-decoration:none}
.bdaw-shop-card__name a:hover{text-decoration:underline}
.bdaw-shop-card__sum{color:var(--shop-muted)}
.bdaw-shop-rel{list-style:none; margin:0; padding:0; display:grid; gap:.35rem}
.bdaw-shop-chip{display:inline-block; padding:0 .45em; border:1px solid currentColor; border-radius:3px; font:600 .68rem/1.6 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.06em; text-transform:uppercase; opacity:.85}
.bdaw-shop-note{font-size:.85em; color:var(--shop-muted)}
.bdaw-shop-lock{font-size:.85em; color:var(--shop-muted); font-style:italic}
.bdaw-shop-req,.bdaw-shop-lic{font-size:.88em; color:var(--shop-muted)}

/* ---- product page ---- */
.bdaw-shop-product{margin:1.4rem 0; display:grid; gap:1rem}
.bdaw-shop-product > *{margin:0}
.bdaw-shop-product__head{display:flex; gap:1.1rem; align-items:flex-start}
.bdaw-shop-product__words > *{margin:0 0 .45rem}
.bdaw-shop-sub{font-size:.95em; color:var(--shop-muted)}
.bdaw-shop-detail{color:var(--shop-muted)}
.bdaw-shop-facts{width:100%; border-collapse:collapse}
.bdaw-shop-facts th,.bdaw-shop-facts td{text-align:left; vertical-align:top; padding:.5rem .7rem .5rem 0; border-top:1px solid var(--shop-line)}
.bdaw-shop-facts th{width:12rem; font-weight:600; white-space:nowrap}
.bdaw-shop-actions{display:flex; flex-wrap:wrap; gap:.6rem; align-items:center}
.bdaw-shop-details{border:1px solid var(--shop-line); border-radius:6px; padding:.2rem 1rem}
.bdaw-shop-details > summary{cursor:pointer; padding:.6rem 0; font-weight:600}
.bdaw-shop-details h3{font-size:1.05rem; margin:1rem 0 .4rem}
.bdaw-shop-steps{padding-left:1.3rem; margin:0}
.bdaw-shop-steps li{margin:.25rem 0}
.bdaw-shop-sha code{word-break:break-all; font-size:.8rem}
.bdaw-shop-help{font-size:.92em; color:var(--shop-muted)}
@media (max-width:640px){.bdaw-shop-product__head{flex-direction:column}.bdaw-shop-facts th{display:block; width:auto; white-space:normal; padding-bottom:0}.bdaw-shop-facts td{display:block; border-top:0; padding-top:.15rem}}

/* ---- gallery ---- */
.bdaw-shop-gallery{display:grid; gap:.8rem; max-width:64rem}
.bdaw-shop-gallery.has-more{grid-template-columns:repeat(4,minmax(0,1fr))}
.bdaw-shop-gallery.has-more .bdaw-shop-gallery__item:first-child{grid-column:1 / -1}
.bdaw-shop-gallery__item{display:block; line-height:0; border:1px solid var(--shop-line); border-radius:4px; overflow:hidden; cursor:zoom-in}
.bdaw-shop-gallery__item img{display:block; width:100%; height:auto; aspect-ratio:16/10; object-fit:cover; object-position:top center; transition:transform .25s ease}
.bdaw-shop-gallery__item:hover img{transform:scale(1.015)}
.bdaw-shop-gallery__item:hover,.bdaw-shop-gallery__item:focus-visible{border-color:var(--shop-accent)}
@media (max-width:640px){.bdaw-shop-gallery.has-more{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---- the slideshow over the page ---- */
.bdaw-shop-show{position:fixed; inset:0; z-index:100001; display:flex; align-items:center; justify-content:center; gap:1rem; padding:3.5rem 1rem 1rem; background:rgba(8,10,14,.96); color:#f2f2f2}
.bdaw-shop-show[hidden]{display:none}
html.bdaw-shop-show-open{overflow:hidden}
.bdaw-shop-show__fig{margin:0; flex:1 1 auto; min-width:0; max-width:min(96rem,100%); height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.7rem}
.bdaw-shop-show__fig img{display:block; max-width:100%; max-height:calc(100% - 2.5rem); width:auto; height:auto; object-fit:contain; box-shadow:0 10px 40px rgba(0,0,0,.5); background:#fff}
.bdaw-shop-show__fig figcaption{font-size:.95rem; line-height:1.4; text-align:center; color:#d6d6d6}
.bdaw-shop-show__num{opacity:.7; margin-left:.6rem}
.bdaw-shop-show button{appearance:none; border:1px solid rgba(255,255,255,.25); background:rgba(255,255,255,.08); color:#fff; cursor:pointer; line-height:1; border-radius:999px; padding:0}
.bdaw-shop-show button:hover,.bdaw-shop-show button:focus-visible{background:rgba(255,255,255,.2); border-color:#fff; outline:none}
.bdaw-shop-show__close{position:absolute; top:.8rem; right:.8rem; width:2.6rem; height:2.6rem; font-size:1.7rem}
.bdaw-shop-show__nav{flex:0 0 auto; width:3rem; height:3rem; font-size:2rem}
.bdaw-shop-show__nav[hidden]{display:none}
@media (max-width:640px){.bdaw-shop-show{padding:3.5rem .4rem .6rem; gap:.3rem}.bdaw-shop-show__nav{position:absolute; bottom:.8rem; width:2.8rem; height:2.8rem}.bdaw-shop-show__nav.is-prev{left:1rem}.bdaw-shop-show__nav.is-next{right:1rem}.bdaw-shop-show__fig img{max-height:calc(100% - 5.5rem)}}

/* ---- bundles ---- */
.bdaw-shop-bundles{margin:2rem 0 0}
.bdaw-shop-bundles[hidden]{display:none}
.bdaw-shop-bundles__title{margin:0 0 .8rem; font-size:1.3rem}
.bdaw-shop-bundles__grid{display:grid; gap:1rem; grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr))}
.bdaw-shop-bundle{display:grid; align-content:start; gap:.5rem; padding:1.1rem 1.2rem; border:1px solid var(--shop-line); border-left:3px solid var(--shop-accent); border-radius:6px}
.bdaw-shop-bundle > *{margin:0}
.bdaw-shop-bundle__items{margin:0; padding-left:1.1rem; columns:2; column-gap:1.2rem; font-size:.92em}
.bdaw-shop-bundle__all{color:var(--shop-muted)}

/* ---- light and dark pictures: both in the markup, one shown. The theme's switch (html[data-bdaw-mode], html[data-mode]) wins over the system setting; a theme that declares one color-scheme gets html.bdaw-shop-dark or html.bdaw-shop-light from showcase.js. ---- */
.bdaw-shop-art-pair > .is-dark,.bdaw-shop-gallery__item img.is-dark{display:none}
@media (prefers-color-scheme:dark){.bdaw-shop-art-pair > .is-dark,.bdaw-shop-gallery__item img.is-dark{display:inline}.bdaw-shop-gallery__item img.is-dark{display:block}.bdaw-shop-art-pair > .is-light,.bdaw-shop-gallery__item img.is-light{display:none}}
html[data-bdaw-mode="light"] .bdaw-shop-art-pair > .is-dark,html[data-mode="light"] .bdaw-shop-art-pair > .is-dark,html[data-bdaw-mode="light"] .bdaw-shop-gallery__item img.is-dark,html[data-mode="light"] .bdaw-shop-gallery__item img.is-dark,html.bdaw-shop-light .bdaw-shop-art-pair > .is-dark,html.bdaw-shop-light .bdaw-shop-gallery__item img.is-dark{display:none}
html[data-bdaw-mode="light"] .bdaw-shop-art-pair > .is-light,html[data-mode="light"] .bdaw-shop-art-pair > .is-light,html[data-bdaw-mode="light"] .bdaw-shop-gallery__item img.is-light,html[data-mode="light"] .bdaw-shop-gallery__item img.is-light,html.bdaw-shop-light .bdaw-shop-art-pair > .is-light,html.bdaw-shop-light .bdaw-shop-gallery__item img.is-light{display:inline}
html[data-bdaw-mode="light"] .bdaw-shop-gallery__item img.is-light,html[data-mode="light"] .bdaw-shop-gallery__item img.is-light,html.bdaw-shop-light .bdaw-shop-gallery__item img.is-light{display:block}
html[data-bdaw-mode="dark"] .bdaw-shop-art-pair > .is-light,html[data-mode="dark"] .bdaw-shop-art-pair > .is-light,html[data-bdaw-mode="dark"] .bdaw-shop-gallery__item img.is-light,html[data-mode="dark"] .bdaw-shop-gallery__item img.is-light,html.bdaw-shop-dark .bdaw-shop-art-pair > .is-light,html.bdaw-shop-dark .bdaw-shop-gallery__item img.is-light{display:none}
html[data-bdaw-mode="dark"] .bdaw-shop-art-pair > .is-dark,html[data-mode="dark"] .bdaw-shop-art-pair > .is-dark,html.bdaw-shop-dark .bdaw-shop-art-pair > .is-dark{display:inline}
html[data-bdaw-mode="dark"] .bdaw-shop-gallery__item img.is-dark,html[data-mode="dark"] .bdaw-shop-gallery__item img.is-dark,html.bdaw-shop-dark .bdaw-shop-gallery__item img.is-dark{display:block}
