/* AvlixBD Phase 9.3 — modern vendor onboarding */
html body:has(#cpv2-vendor-register) .cpv2-shell {
    min-height: auto !important;
    padding: 28px 0 52px !important;
    background: #f7f8fb !important;
    background-image: none !important;
    color: #172033 !important;
}
html body:has(#cpv2-vendor-register) .cpv2-container { width: min(1080px, calc(100% - 40px)) !important; }
html body:has(#cpv2-vendor-register) .cpv2-page-head {
    margin: 0 0 18px !important; padding: 24px 28px !important;
    align-items: center !important; border: 1px solid #e5e7eb !important;
    border-radius: 18px !important; background: #fff !important;
}
html body:has(#cpv2-vendor-register) .cpv2-kicker { margin-bottom: 7px !important; color: #6d28d9 !important; font-size: 10px !important; letter-spacing: .12em !important; }
html body:has(#cpv2-vendor-register) .cpv2-page-head h1 { margin: 0 0 6px !important; color: #111827 !important; font-size: clamp(30px, 4vw, 42px) !important; letter-spacing: -.035em !important; }
html body:has(#cpv2-vendor-register) .cpv2-page-head p { color: #667085 !important; font-size: 14px !important; }
html body:has(#cpv2-vendor-register) .cpv2-outline {
    min-height: 44px !important; padding: 0 17px !important; border: 1px solid #d7dce3 !important;
    border-radius: 10px !important; background: #fff !important; color: #344054 !important; box-shadow: none !important;
}
html body:has(#cpv2-vendor-register) .cpv2-register {
    padding: 28px !important; border: 1px solid #e5e7eb !important; border-radius: 18px !important;
    background: #fff !important; box-shadow: 0 12px 35px rgba(15,23,42,.06) !important;
}
html body:has(#cpv2-vendor-register) .cpv2-section-title { gap: 12px !important; margin: 0 0 18px !important; padding-top: 0 !important; }
html body:has(#cpv2-vendor-register) .cpv2-section-title:not(:first-child) { margin-top: 28px !important; padding-top: 25px !important; border-top: 1px solid #edf0f3 !important; }
html body:has(#cpv2-vendor-register) .cpv2-section-title > span {
    width: 32px !important; height: 32px !important; border-radius: 9px !important;
    background: #5b21b6 !important; background-image: none !important; font-size: 13px !important;
}
html body:has(#cpv2-vendor-register) .cpv2-section-title h2 { margin: 0 0 3px !important; color: #172033 !important; font-size: 18px !important; }
html body:has(#cpv2-vendor-register) .cpv2-section-title p { color: #7a8496 !important; font-size: 12px !important; }
html body:has(#cpv2-vendor-register) .cpv2-form-grid { gap: 15px 18px !important; }
html body:has(#cpv2-vendor-register) .cpv2-field { gap: 7px !important; }
html body:has(#cpv2-vendor-register) .cpv2-field label { color: #344054 !important; font-size: 12px !important; font-weight: 750 !important; }
html body:has(#cpv2-vendor-register) .cpv2-input {
    min-height: 48px !important; padding: 0 13px !important; gap: 8px !important;
    border: 1px solid #dfe3e8 !important; border-radius: 10px !important; background: #fff !important; box-shadow: none !important;
}
html body:has(#cpv2-vendor-register) .cpv2-input:focus-within { border-color: #7c3aed !important; box-shadow: 0 0 0 3px rgba(124,58,237,.09) !important; }
html body:has(#cpv2-vendor-register) .cpv2-input > span { color: #7c3aed !important; font-size: 13px !important; }
html body:has(#cpv2-vendor-register) .cpv2-input input,
html body:has(#cpv2-vendor-register) .cpv2-input select,
html body:has(#cpv2-vendor-register) .cpv2-input textarea { color: #172033 !important; font-size: 13px !important; }
html body:has(#cpv2-vendor-register) .cpv2-input select { height: 46px !important; }
html body:has(#cpv2-vendor-register) .cpv2-input--textarea { padding-top: 12px !important; }
html body:has(#cpv2-vendor-register) .cpv2-input textarea { min-height: 64px !important; }

html body:has(#cpv2-vendor-register) .cpv2-category-tools { margin-bottom: 10px !important; }
html body:has(#cpv2-vendor-register) .cpv2-category-search { max-width: none !important; }
html body:has(#cpv2-vendor-register) .cpv2-category-toggle {
    min-height: 48px !important; padding: 0 15px !important; border: 1px solid #ddd6fe !important;
    border-radius: 10px !important; background: #f5f3ff !important; color: #5b21b6 !important;
}
html body:has(#cpv2-vendor-register) .cpv2-category-toggle strong { color: #7c3aed !important; }
html body:has(#cpv2-vendor-register) .cpv2-category-panel { display: none !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap: 8px !important; max-height: 240px !important; padding: 10px !important; overflow: auto !important; border: 1px solid #e5e7eb !important; border-radius: 12px !important; background: #f8fafc !important; }
html body:has(#cpv2-vendor-register) .cpv2-category-panel.is-open { display: grid !important; }
html body:has(#cpv2-vendor-register) .cpv2-category { min-height: 42px !important; padding: 0 11px !important; border: 1px solid #e2e5ea !important; border-radius: 9px !important; font-size: 11px !important; background: #fff !important; }
html body:has(#cpv2-vendor-register) .cpv2-category:has(input:checked) { border-color: #8b5cf6 !important; background: #f5f3ff !important; color: #5b21b6 !important; }
html body:has(#cpv2-vendor-register) .cpv2-category b { background: #5b21b6 !important; }
html body:has(#cpv2-vendor-register) .cpv2-terms { margin: 22px 0 16px !important; color: #475467 !important; font-size: 12px !important; }
html body:has(#cpv2-vendor-register) .cpv2-primary {
    min-height: 48px !important; border-radius: 10px !important; background: #5b21b6 !important;
    background-image: none !important; box-shadow: none !important; color: #fff !important;
}
html body:has(#cpv2-vendor-register) .cpv2-signin-note { margin: 14px 0 !important; color: #667085 !important; font-size: 12px !important; }
html body:has(#cpv2-vendor-register) .cpv2-signin-note a { color: #5b21b6 !important; }
html body:has(#cpv2-vendor-register) .cpv2-review-note { padding: 12px 14px !important; border: 1px solid #e5e7eb !important; border-radius: 11px !important; background: #f8fafc !important; }
html body:has(#cpv2-vendor-register) .cpv2-review-note b { width: 32px !important; height: 32px !important; background: #ede9fe !important; color: #5b21b6 !important; font-size: 15px !important; }
html body:has(#cpv2-vendor-register) .cpv2-review-note span { color: #667085 !important; font-size: 11px !important; }
html body:has(#cpv2-vendor-register) .cpv2-review-note strong { color: #344054 !important; }

/* Shopping UI is intentionally absent during seller account onboarding. */
html body:has(#cpv2-vendor-register) .cpf-cart__fab { display: none !important; }

@media (max-width: 820px) {
    html body:has(#cpv2-vendor-register) .cpv2-container { width: min(100% - 20px, 680px) !important; }
    html body:has(#cpv2-vendor-register) .cpv2-page-head { padding: 20px !important; align-items: flex-start !important; }
    html body:has(#cpv2-vendor-register) .cpv2-register { padding: 20px !important; }
    html body:has(#cpv2-vendor-register) .cpv2-category-panel { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 560px) {
    html body:has(#cpv2-vendor-register) .cpv2-page-head { display: grid !important; }
    html body:has(#cpv2-vendor-register) .cpv2-page-head .cpv2-outline { width: 100% !important; }
    html body:has(#cpv2-vendor-register) .cpv2-category-panel { grid-template-columns: 1fr !important; }
}
