/* Partner request form — Template Partners v2 §3: intro .8 (max 440) + form panel 1.2, gap 56. */
.bd-preq { padding-block: calc(76px * var(--bd-s)); }
.bd-preq__inner { display: flex; gap: 56px; align-items: flex-start; }
.bd-preq__intro { flex: .8; max-width: 440px; }
.bd-preq__intro .bd-kicker { margin: 0; font-size: 12px; }
.bd-preq__intro .bd-h2 { margin-top: 14px; }
.bd-preq__body { font: 600 16px/1.6 var(--wp--preset--font-family--montserrat); color: var(--bd-body); margin: 16px 0 0; }
.bd-preq__note { font: 600 14.5px/1.6 var(--wp--preset--font-family--montserrat); color: var(--bd-meta); margin: 14px 0 0; }
.bd-preq__panel { flex: 1.2; min-width: 0; background: linear-gradient(180deg, rgba(247,248,249,.08), rgba(247,248,249,.04)); border: 1px solid rgba(247,248,249,.14); border-radius: var(--bd-r-card); padding: 34px 36px; }

.bd-preq__form { display: flex; flex-direction: column; gap: 22px; }
.bd-preq fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.bd-preq legend { padding: 0; }
.bd-preq__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.bd-preq__label, .bd-field__label { display: block; font: 700 13.5px/1.3 var(--wp--preset--font-family--montserrat); color: var(--bd-haze); }
.bd-field__label.is-light { font-weight: 600; font-size: 13px; color: var(--bd-body); }
.bd-preq__sub { font-weight: 600; color: var(--bd-meta); }
.bd-req { color: var(--bd-sun); }
.bd-preq .bd-preq__partner { display: flex; flex-direction: column; gap: 10px; padding-bottom: 22px; border-bottom: 1px solid rgba(247,248,249,.14); }
.bd-preq__partner > legend { margin-bottom: 10px; }
.bd-preq__choices { display: flex; flex-wrap: wrap; gap: 8px; }
.bd-preq__when-yes { display: flex; flex-direction: column; gap: 10px; margin-top: 4px; }
.bd-preq__hint { font: 600 13px/1.5 var(--wp--preset--font-family--montserrat); color: var(--bd-meta); margin: 0; }
/* Conditional parts: shown by view.js (classes on the form); without JS the partner fields stay visible. */
.js .bd-preq__form [data-when] { display: none; }
.js .bd-preq__form.is-yes [data-when="yes"], .js .bd-preq__form.is-no [data-when="no"], .js .bd-preq__form.is-other [data-when="other"], .js .bd-preq__form.is-wp [data-when="workplace"] { display: flex; }
html:not(.js) .bd-preq__form [data-when="no"], html:not(.js) .bd-preq__form [data-when="workplace"] { display: none; }

/* Choice chips (radio) and plugin chips (checkbox): the input is visually hidden, the span is the chip. */
.bd-choice input, .bd-chipcheck input, .bd-seg input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.bd-choice span, .bd-chipcheck > span { display: inline-flex; align-items: center; gap: 7px; cursor: pointer; font: 600 13px/1.2 var(--wp--preset--font-family--montserrat); border-radius: var(--bd-r-pill); background: none; border: 1.5px solid rgba(247,248,249,.24); color: var(--bd-body); transition: background-color 180ms ease-out, border-color 180ms ease-out, color 180ms ease-out; }
.bd-choice span { min-height: 40px; padding: 0 18px; box-sizing: border-box; }
.bd-chipcheck > span { min-height: 38px; padding: 0 15px; box-sizing: border-box; color: rgba(247,248,249,.88); }
.bd-choice span:hover, .bd-chipcheck > span:hover { border-color: rgba(247,248,249,.5); }
.bd-choice input:checked + span, .bd-chipcheck input:checked + span { background: var(--bd-sun); color: var(--bd-ink); border-color: var(--bd-sun); }
.bd-choice input:focus-visible + span, .bd-chipcheck input:focus-visible + span, .bd-seg input:focus-visible + span { outline: 2px solid var(--bd-sun); outline-offset: 3px; }
.bd-preq__chips { display: flex; flex-wrap: wrap; gap: 8px; }
.bd-preq__plugins { display: flex; flex-direction: column; gap: 10px; }
.bd-preq__plugins > legend { margin-bottom: 10px; }
.bd-preq__form.is-invalid-plugins .bd-chipcheck > span { border-color: #ff8fa8; }
.bd-wptag { display: none; font: 700 9.5px/1.2 var(--wp--preset--font-family--montserrat); letter-spacing: .05em; text-transform: uppercase; border-radius: var(--bd-r-sm); padding: 2px 5px; border: 1px solid rgba(247,248,249,.4); color: var(--bd-haze); }
.bd-wptag.is-edition { border-color: rgba(250,154,66,.7); color: var(--bd-sun); }
.bd-preq__form.is-wp .bd-wptag { display: inline-block; }
.bd-chipcheck input:checked + span .bd-wptag { border-color: rgba(5,1,52,.5); color: var(--bd-ink); }
.bd-preq__legend { flex-direction: column; gap: 6px; margin-top: 4px; font: 600 12.5px/1.5 var(--wp--preset--font-family--montserrat); color: var(--bd-body); }
.bd-preq__legend p { margin: 0; }
.bd-preq__legend strong { font-weight: 700; color: var(--bd-haze); }
.bd-preq__legend strong.is-edition { color: var(--bd-sun); }
.bd-preq__legend .is-meta { color: var(--bd-meta); }

/* Text fields. */
.bd-field { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.bd-preq :is(input[type="text"], input[type="email"], select, textarea) { font: 600 14.5px/1.4 var(--wp--preset--font-family--montserrat); color: var(--bd-haze); background-color: rgba(247,248,249,.06); border: 1.5px solid rgba(247,248,249,.24); border-radius: var(--bd-r-sm); min-height: 48px; padding: 0 14px; box-sizing: border-box; width: 100%; }
.bd-preq select { padding-right: 40px; }
.bd-preq textarea { padding: 12px 14px; min-height: 104px; resize: vertical; }
.bd-preq .is-invalid { border-color: #ff8fa8 !important; }
.bd-preq__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.bd-preq__grid--platform { grid-template-columns: 1.4fr 1fr; }
.bd-preq__grid--platform legend { margin-bottom: 7px; }
.bd-seg { display: flex; border: 1.5px solid rgba(247,248,249,.24); border-radius: var(--bd-r-pill); padding: 3px; gap: 3px; }
.bd-seg label { flex: 1; display: flex; }
.bd-seg span { flex: 1; display: flex; align-items: center; justify-content: center; min-height: 40px; padding: 0 10px; border-radius: var(--bd-r-pill); cursor: pointer; font: 600 13px/1.2 var(--wp--preset--font-family--montserrat); white-space: nowrap; color: var(--bd-body); transition: background-color 180ms ease-out, color 180ms ease-out; }
.bd-seg input:checked + span { background: var(--bd-haze); color: var(--bd-ink); }

.bd-preq__notice { display: flex; gap: 12px; align-items: baseline; background: rgba(247,248,249,.06); border-radius: var(--bd-r-sm); padding: 14px 16px; margin: 0; font: 600 13.5px/1.55 var(--wp--preset--font-family--montserrat); color: rgba(247,248,249,.88); }
.bd-preq__notice::before, .bd-tri::before { content: ""; flex: none; width: 0; height: 0; border-style: solid; border-width: 5px 0 5px 8px; border-color: transparent transparent transparent var(--bd-sun); }
.bd-preq__error { font: 600 13px/1.4 var(--wp--preset--font-family--montserrat); color: #ff8fa8; margin: 0; }
.bd-preq__foot { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.bd-preq__privacy { font: 600 12.5px/1.5 var(--wp--preset--font-family--montserrat); color: var(--bd-meta); max-width: 360px; margin: 0; }
.bd-preq__privacy a { color: var(--bd-sun); text-decoration: underline; text-underline-offset: 3px; }
.bd-preq__foot .bd-btn { flex: none; border: 0; }
.bd-preq__form.is-busy .bd-btn { opacity: .6; pointer-events: none; }

.bd-preq__sent { display: flex; flex-direction: column; gap: 14px; padding: 6px 0; }
.bd-preq__sent:focus { outline: none; }
.bd-preq__sent .bd-kicker { margin: 0; font-size: 12px; }
.bd-preq__sent-title { font: 700 26px/1.25 var(--wp--preset--font-family--montserrat); color: var(--bd-haze); margin: 0; }
.bd-preq__sent-line { font: 600 15.5px/1.6 var(--wp--preset--font-family--montserrat); color: var(--bd-body); margin: 0; }
.bd-preq__summary { display: grid; grid-template-columns: auto 1fr; gap: 8px 18px; margin: 6px 0 0; padding-top: 18px; border-top: 1px solid rgba(247,248,249,.14); font: 600 14px/1.5 var(--wp--preset--font-family--montserrat); color: var(--bd-haze); }
.bd-preq__summary dt { color: var(--bd-meta); }
.bd-preq__summary dd { margin: 0; }
.bd-preq__again { align-self: flex-start; display: inline-flex; align-items: center; min-height: 44px; font: 700 15px/1.2 var(--wp--preset--font-family--montserrat); color: var(--bd-sun); }
.bd-preq__again:hover { color: var(--bd-haze); }

@media (max-width: 1023px) {
	.bd-preq__inner { flex-direction: column; align-items: stretch; gap: 32px; }
	.bd-preq__intro { max-width: 720px; }
}
/* Mobile (docs/responsive.md §5 Partners): fields full width, labels on top (.bd-field is a column). */
@media (max-width: 767px) {
	.bd-preq__panel { padding: 24px 20px; }
	.bd-preq :is(input[type="text"], input[type="email"], select, textarea) { font-size: 16px; } /* no iOS zoom on focus */
	.bd-choice span, .bd-chipcheck > span { min-height: 44px; }
	.bd-preq__grid, .bd-preq__grid--platform { grid-template-columns: 1fr; }
	.bd-seg { flex-wrap: wrap; border-radius: var(--bd-r-card); }
	.bd-seg label { flex: 1 1 100%; }
	.bd-preq__foot { flex-direction: column; align-items: stretch; }
	.bd-preq__foot .bd-btn { width: 100%; }
}
