/* Resource library (Thread 3): Choose 3 of 10 and the library. Uses the --vh-* tokens from v12b.css. */
.v12b-flow.v12b-resources, .v12b-flow.v12b-library { max-width: 960px; }
.v12b-res-head { margin-bottom: 24px; }
.v12b-eyebrow { font: 600 12px var(--vh-mono); text-transform: uppercase; letter-spacing: 0.08em; color: var(--vh-red); margin: 0 0 8px; }
.v12b-res-head h1 { font-size: clamp(28px, 5vw, 44px); margin: 0 0 12px; }
.v12b-lead { color: var(--vh-text-dim); font-size: 18px; margin: 0 0 16px; }
.v12b-res-terms { color: var(--vh-text-dim); font-size: 14px; padding-left: 18px; margin: 0; }
.v12b-pick-set { border: 0; padding: 0; margin: 0 0 24px; min-width: 0; }
.v12b-pick-set legend { display: flex; justify-content: space-between; gap: 12px; width: 100%; font-weight: 600; margin-bottom: 12px; padding: 0; }
.v12b-counter { font-family: var(--vh-mono); color: var(--vh-text-dim); }
.v12b-pick-grid, .v12b-lib-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }
.v12b-pick-card { position: relative; display: grid; gap: 6px; background: var(--vh-bg-1); border: 1px solid var(--vh-line-hi); border-radius: 14px; padding: 18px 18px 18px 52px; cursor: pointer; }
.v12b-pick-card input { position: absolute; left: 18px; top: 20px; width: 20px; height: 20px; accent-color: var(--vh-red); }
.v12b-pick-card:focus-within { outline: 2px solid var(--vh-red); outline-offset: 2px; }
.v12b-pick-card.is-on { border-color: var(--vh-red); background: var(--vh-red-soft); }
.v12b-pick-card.is-soon { opacity: .55; cursor: not-allowed; }
.v12b-pick-icon { font-size: 22px; }
.v12b-pick-name { font-weight: 700; }
.v12b-pick-sum { color: var(--vh-text-dim); font-size: 14px; }
.v12b-soon { font: 600 11px var(--vh-mono); text-transform: uppercase; color: var(--vh-amber); }
.v12b-lead-form { max-width: 560px; }
.v12b-lead-form details { display: grid; gap: 12px; }
.v12b-lead-form summary { cursor: pointer; color: var(--vh-text-dim); margin-bottom: 12px; }
.v12b-btn[disabled] { opacity: .45; cursor: not-allowed; box-shadow: none; }
.v12b-lib-card h2 { font-size: 18px; margin-top: 0; }
.v12b-file { font-weight: 600; }
@media (max-width: 600px) {
	.v12b-pick-grid, .v12b-lib-grid { grid-template-columns: 1fr; }
}
.v12b-form.v12b-consent { grid-template-columns: 1fr auto; align-items: center; }
@media (max-width: 600px) { .v12b-form.v12b-consent { grid-template-columns: 1fr; } }
.v12b-res-contents { margin-bottom: 24px; }
.v12b-res-contents h2 { font-size: 18px; margin-top: 0; }
.v12b-res-contents h3 { font: 600 12px var(--vh-mono); text-transform: uppercase; letter-spacing: .08em; color: var(--vh-text-dim); margin: 16px 0 6px; }
.v12b-res-contents ul { margin: 0; padding-left: 18px; font-size: 14px; }
.v12b-privacy-notice { font-size: 13px; }
