/* Vendor programs: add-on store, certification tracking, Fellowship, Admin > Vendor Programs. Classes are prefixed vp-. */

/* add-to-cart controls inside catalog tables */
.vp-add { flex-wrap: nowrap; justify-content: flex-end; gap: 6px; }
.vp-add input { min-width: 150px; max-width: 220px; padding: 6px 9px; font-size: 13px; }
.vp-add select { width: auto; padding: 6px 9px; font-size: 13px; }
.vp-own { display: block; margin-top: 4px; font-size: 12.5px; }
.vp-own + .vp-own { margin-top: 6px; }

/* cart */
.vp-cart { border-left: 5px solid var(--teal); }
.vp-cart-lines { list-style: none; margin: 0 0 12px; padding: 0; }
.vp-cart-lines li { padding: 10px 0; border-top: 1px solid var(--g1); font-size: 14px; }
.vp-cart-lines li:first-child { border-top: 0; }
.vp-cart-lines .vp-line-top { display: flex; justify-content: space-between; gap: 10px; align-items: baseline; }
.vp-cart-lines small { color: var(--muted); }
.vp-cart-lines form { margin-top: 6px; }
.vp-qty { width: 70px; padding: 5px 8px; font-size: 13px; }
.vp-plain { border: 0; margin: 0 0 12px; padding: 0; }
.vp-plain .check + .check { margin-top: 6px; }
.vp-note { font-size: 13px; color: var(--muted); margin: 8px 0 0; }

/* certification and fellowship detail */
.vp-files { list-style: none; margin: 0; padding: 0; }
.vp-files li { display: flex; gap: 10px; align-items: center; padding: 9px 0; border-top: 1px solid var(--g1); font-size: 14px; }
.vp-files li:first-child { border-top: 0; }
.vp-files .vp-file-name { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.vp-files small { color: var(--muted); display: block; }
.vp-certificate { border: 2px solid var(--teal); border-radius: var(--radius); padding: 20px 22px; background: #f7fbfb; }
.vp-certificate h2 { margin-bottom: 2px; }
.vp-answer { margin: 0 0 16px; }
.vp-answer h3 { font-size: 14px; margin-bottom: 4px; }
.vp-answer p { margin-bottom: .5em; }
.vp-grant { list-style: none; margin: 0; padding: 0; }
.vp-grant li { display: flex; gap: 10px; align-items: flex-start; padding: 8px 0; border-top: 1px solid var(--g1); font-size: 14px; }
.vp-grant li:first-child { border-top: 0; }
.vp-grant .ico { flex: none; margin-top: 2px; color: var(--teal-dark); }
.vp-check-ok { color: var(--ok); }
.vp-check-no { color: var(--bad); }
.vp-field-error { color: var(--bad); font-size: 12.5px; margin-top: 4px; display: block; }

/* Admin */
.vp-inline { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; margin-top: 8px; }
.vp-inline input, .vp-inline select { width: auto; max-width: 190px; padding: 6px 9px; font-size: 13px; }
.vp-kcard { display: block; color: inherit; }
.vp-kcard:hover { text-decoration: none; border-color: var(--teal); }
.vp-kcard small { color: var(--muted); display: block; }
.vp-count { background: #fff; border-radius: 10px; font-size: 11px; padding: 1px 7px; margin-left: 6px; font-weight: 600; color: var(--slate); }
.vp-filters input, .vp-filters select { width: auto; max-width: 220px; padding: 6px 10px; font-size: 13px; }

@media (max-width: 900px) {
  .vp-add { flex-wrap: wrap; }
}
@media print {
  .vp-no-print { display: none !important; }
}
