.vf-packaging { margin: 1rem 0; padding: 1.25rem; overflow-wrap: anywhere; }
.vf-packaging h3, .vf-packaging h4 { margin-top: 0; }
.vf-packaging h5 { margin-bottom: .5rem; }
.vf-packaging .vc-row { align-items: flex-start; gap: .6rem; margin: .75rem 0; }
.vf-packaging .vc-row input[type=checkbox] { flex: 0 0 auto; margin-top: .2rem; }
.vf-packaging-budget { max-width: 14rem; }
.vf-packaging-save, .vf-packaging-niches { display: flex; align-items: center; flex-wrap: wrap; gap: .75rem; margin: 1rem 0; }
.vf-packaging-readiness, .vf-packaging-compliance { border-top: 1px solid #ffffff25; padding-top: 1rem; margin-top: 1rem; }
.vf-packaging-readiness li { margin: .4rem 0; }
.vf-packaging details { margin: .75rem 0; }
.vf-packaging summary { cursor: pointer; }
.vf-packaging-error { color: #ffb6b6; }
.vf-packaging-json { max-height: 22rem; overflow: auto; white-space: pre-wrap; font-size: .8rem; border-radius: .5rem; padding: .75rem; background: #0003; }
.vf-packaging-facts { display: grid; grid-template-columns: minmax(6rem, 1fr) minmax(8rem, 2fr); gap: .5rem .8rem; }
.vf-packaging-facts dt { color: var(--vc-muted, #bcac95); }
.vf-packaging-facts dd { margin: 0; }
.vf-packaging-candidates { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: 1rem; margin: 1rem 0; }
.vf-packaging-candidate { border: 1px solid #ffffff25; border-radius: .8rem; padding: 1rem; min-width: 0; }
.vf-packaging-candidate--selected { border-color: #e9a92b; }
.vf-packaging-candidate img { width: 100%; aspect-ratio: 16 / 9; object-fit: contain; border-radius: .4rem; margin-bottom: .75rem; }
.vf-packaging-prompt { white-space: pre-wrap; }
.vf-packaging-job .vf-packaging-facts { grid-template-columns: 1fr; }
.vf-packaging-job .vf-packaging-facts dd { margin-bottom: .5rem; }
.vf-packaging-page { max-width: 1400px; margin-inline: auto; }
.vf-packaging-credentials { border-top: 1px solid #ffffff25; margin-top: 1.5rem; padding-top: 1.25rem; }
.vf-packaging-credential-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); gap: 1rem; }
.vf-packaging-credential { min-width: 0; border: 1px solid #ffffff20; border-radius: .65rem; padding: 1rem; }
.vf-packaging-credential .vc-input { width: 100%; box-sizing: border-box; }
