/* Solution picker — Home v7 "What do you want to improve?": padding 82/76 (first section after the hero); violet and
   sunshade glows; 7 tiles 4 + 3 centred (flex-wrap, 4:3, radius 24, #0d0a3f, image 100% wide with a per-solution
   focus, scrim, "Select"/"Selected" pill, hover lift); result list 3 columns with a tag per matching solution; prompt
   while nothing is selected. */
.bd-picker { padding-block: calc(82px * var(--bd-s)) calc(76px * var(--bd-s)); overflow-x: clip; }
.bd-picker > .bd-wrap { position: relative; z-index: 0; }
.bd-picker > .bd-wrap::before { content: ""; position: absolute; z-index: -1; top: 40px; left: -120px; right: -80px; height: 600px; pointer-events: none; background: radial-gradient(360px 260px at 360px 300px, rgba(163,0,190,.20), rgba(163,0,190,0)), radial-gradient(320px 260px at calc(100% - 320px) 260px, rgba(250,154,66,.10), rgba(250,154,66,0)); }
.bd-picker .bd-section-head { margin-bottom: 26px; }

.bd-picker__grid { --bd-picker-gap: 14px; list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: var(--bd-picker-gap); }
.bd-picker__tile { position: relative; flex: 0 0 calc((100% - 3 * var(--bd-picker-gap)) / 4); min-width: 0; aspect-ratio: 4 / 3; border-radius: var(--bd-r-card); overflow: hidden; background: #0d0a3f; box-shadow: 0 22px 44px -26px rgba(0,0,0,.7); transition: transform 260ms var(--bd-ease), box-shadow 260ms ease-out; }
@media (hover: hover) {
	.bd-picker__tile:hover { transform: translateY(-4px); box-shadow: 0 30px 52px -24px rgba(0,0,0,.8); }
}
.bd-picker__tile:has(.bd-picker__toggle:focus-visible) { outline: 2px solid var(--bd-sun); outline-offset: 3px; }
.bd-picker__toggle { position: absolute; inset: 0; margin: 0; padding: 0; border: 0; background: none; cursor: pointer; overflow: hidden; border-radius: inherit; }
.bd-picker__toggle:focus-visible { outline: none; }
.bd-picker__img { --flip: scaleX(1); position: absolute; inset: 0; background-repeat: no-repeat; background-size: 100% auto; background-position: 50% 10%; transform: var(--flip) scale(1); filter: brightness(.72) saturate(.85); transition: transform 620ms var(--bd-ease), filter 320ms ease-out; }
.bd-picker__tile.is-mirror .bd-picker__img { --flip: scaleX(-1); }
.bd-picker__toggle:hover .bd-picker__img { filter: brightness(1.05) saturate(1.05); }
.bd-picker__tile.is-on .bd-picker__img { transform: var(--flip) scale(1.06); filter: none; }
.bd-picker__scrim { position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(5,1,52,0) 34%, rgba(5,1,52,.62) 62%, rgba(5,1,52,.92) 100%); }
.bd-picker__ring { position: absolute; inset: 0; border-radius: inherit; pointer-events: none; box-shadow: inset 0 0 0 1px rgba(247,248,249,.10); transition: box-shadow 240ms ease-out; }
.bd-picker__tile.is-on .bd-picker__ring { box-shadow: inset 0 0 0 2px var(--bd-sun); }
/* Select pill: outline "+ Select" while off, Sunshade "✓ Selected" while on. */
.bd-picker__pill { position: absolute; top: 16px; right: 16px; height: 32px; padding: 0 13px 0 10px; box-sizing: border-box; border-radius: var(--bd-r-pill); display: flex; align-items: center; pointer-events: none; font: 700 12.5px/1 var(--wp--preset--font-family--montserrat); color: var(--bd-haze); border: 1.5px solid rgba(247,248,249,.75); background: rgba(5,1,52,.6); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); transition: background 200ms ease-out, border-color 200ms ease-out, color 200ms ease-out; }
.bd-picker__pill-off, .bd-picker__pill-on { display: flex; align-items: center; gap: 6px; }
.bd-picker__pill-on { display: none; }
.bd-picker__tile.is-on .bd-picker__pill { color: var(--bd-ink); background: var(--bd-sun); border-color: var(--bd-sun); }
.bd-picker__tile.is-on .bd-picker__pill-off { display: none; }
.bd-picker__tile.is-on .bd-picker__pill-on { display: flex; }
.bd-picker__text { position: absolute; left: 22px; right: 22px; bottom: 18px; display: flex; flex-direction: column; gap: 4px; pointer-events: none; }
/* Label link: 24px visual, 44px hit area (padding with negative margin). */
.bd-picker__label { align-self: flex-start; display: flex; align-items: center; gap: 4px; min-height: 24px; padding: 10px 0; margin: -10px 0; font: 600 11.5px/1.3 var(--wp--preset--font-family--montserrat); letter-spacing: .07em; text-transform: uppercase; color: var(--bd-sun); }
a.bd-picker__label { pointer-events: auto; }
a.bd-picker__label:hover { color: var(--bd-haze); text-decoration: underline; text-underline-offset: 4px; }
.bd-picker__title { max-width: 250px; font: 700 17px/1.3 var(--wp--preset--font-family--montserrat); color: var(--bd-haze); }

.bd-picker__result { position: relative; margin-top: 40px; scroll-margin-top: 24px; }
.bd-picker__head { display: flex; align-items: center; gap: 18px; padding-bottom: 18px; border-bottom: 1px solid rgba(247,248,249,.14); }
.bd-picker__count { margin: 0; font: 700 22px/1.3 var(--wp--preset--font-family--montserrat); color: var(--bd-haze); }
.bd-picker__clear { background: none; border: 0; padding: 0; min-height: 44px; cursor: pointer; font: 600 13.5px/1.3 var(--wp--preset--font-family--montserrat); color: var(--bd-meta); text-decoration: underline; text-underline-offset: 4px; }
.bd-picker__clear:hover { color: var(--bd-haze); }
.bd-picker__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 40px; }
.bd-picker__item[hidden] { display: none; }
.bd-picker__link { display: flex; align-items: flex-start; gap: 14px; padding: 20px 14px 22px; margin: 0 -14px; border-bottom: 1px solid rgba(247,248,249,.12); color: var(--bd-haze); background: linear-gradient(90deg, rgba(163,0,190,0), rgba(163,0,190,0)); transition: background 220ms ease-out, color 180ms ease-out; }
.bd-picker__link:hover { color: var(--bd-sun); background: linear-gradient(90deg, rgba(163,0,190,.22), rgba(245,52,119,.08) 60%, rgba(250,154,66,0)); }
.bd-picker__main { flex: 1; min-width: 0; }
.bd-picker__name { display: block; font: 700 17px/1.3 var(--wp--preset--font-family--montserrat); color: inherit; }
.bd-picker__tagline { display: block; margin-top: 4px; font: 600 13.5px/1.5 var(--wp--preset--font-family--montserrat); color: var(--bd-body); }
.bd-picker__tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }
.bd-picker__tags:empty { display: none; }
.bd-picker__tag { border: 1px solid rgba(250,154,66,.7); color: var(--bd-sun); border-radius: var(--bd-r-sm); padding: 3px 8px; font: 700 10.5px/1.3 var(--wp--preset--font-family--montserrat); letter-spacing: .05em; text-transform: uppercase; }
.bd-picker__tag.is-kit { border-color: rgba(247,248,249,.28); color: rgba(247,248,249,.88); }
.bd-picker__arrow { flex: none; padding-top: 1px; font: 700 16px/1.3 var(--wp--preset--font-family--montserrat); }
.bd-picker__prompt { margin: 0; padding: 24px 0; border-top: 1px solid rgba(247,248,249,.14); border-bottom: 1px solid rgba(247,248,249,.14); font: 600 15.5px/1.5 var(--wp--preset--font-family--montserrat); color: var(--bd-body); }
/* Without JS the tiles do nothing: list every plugin, no prompt. */
html:not(.js) .bd-picker__prompt { display: none; }
.bd-picker__foot { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 12px; margin-top: 30px; }

/* docs/responsive.md §5 Home v7: tablet keeps 4 tiles per row (smaller type and pill), mobile 2 columns (the 7th
   centred); the result list below, tapping a tile scrolls to it as on desktop (view.js). */
@media (max-width: 1279px) {
	.bd-picker__text { left: 16px; right: 16px; bottom: 14px; }
	.bd-picker__title { font-size: 15px; }
	.bd-picker__pill { top: 12px; right: 12px; height: 30px; padding: 0 11px 0 9px; font-size: 12px; }
}
@media (max-width: 1023px) {
	.bd-picker__grid { --bd-picker-gap: 12px; }
	.bd-picker__text { left: 12px; right: 12px; bottom: 11px; gap: 2px; }
	.bd-picker__label { font-size: 10.5px; letter-spacing: .06em; }
	.bd-picker__title { font-size: 13px; line-height: 1.25; }
	.bd-picker__pill { top: 9px; right: 9px; height: 26px; padding: 0 9px 0 7px; font-size: 11px; }
	.bd-picker__pill svg { width: 11px; height: 11px; }
	.bd-picker__pill-off, .bd-picker__pill-on { gap: 4px; }
	.bd-picker__list { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 28px; }
}
@media (max-width: 767px) {
	.bd-picker__grid { --bd-picker-gap: 10px; }
	.bd-picker__tile { flex-basis: calc((100% - var(--bd-picker-gap)) / 2); aspect-ratio: 5 / 4; } /* 2 per row, the 7th centred; a bit taller so three title lines clear the pill */
	.bd-picker__img { background-size: cover; }
	.bd-picker__text { left: 14px; right: 14px; bottom: 12px; gap: 4px; }
	.bd-picker__label { font-size: 11px; }
	.bd-picker__title { font-size: 14px; line-height: 1.3; }
	.bd-picker__pill { top: 10px; right: 10px; height: 28px; padding: 0 10px 0 8px; font-size: 11.5px; }
	.bd-picker__pill-off, .bd-picker__pill-on { gap: 5px; }
	.bd-picker__list { grid-template-columns: 1fr; }
	.bd-picker__head { flex-wrap: wrap; gap: 4px 18px; }
	.bd-picker__foot { justify-content: stretch; }
	.bd-picker__foot .bd-btn { flex: 1 1 100%; }
	.bd-picker__foot .bd-btn--primary { order: -1; } /* docs/responsive.md: button pairs stacked, primary on top. */
}
@media (max-width: 379px) {
	.bd-picker__text { left: 12px; right: 12px; bottom: 10px; }
	.bd-picker__title { font-size: 13px; }
	.bd-picker__pill { top: 8px; right: 8px; }
}
