.product-customization {
    display: grid;
    gap: .7rem;
    margin: 0 0 1.3rem;
}
.product-customization label { display: grid; gap: .38rem; }
.product-customization label > span { font-size: .72rem; font-weight: 750; }
.product-customization label > span b { color: var(--danger); }
.product-customization input {
    height: 52px;
    padding: 0 .95rem;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: var(--surface);
    color: var(--ink);
    font: inherit;
    font-size: .76rem;
    outline: none;
}
.product-customization input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }
.product-customization input[aria-invalid="true"] { border-color: var(--danger); }
.product-customization small { color: var(--faint); font-size: 0.6875rem; }
