.cc-suggest-product-section {
    display: grid;
    gap: 1.25rem;
    max-width: 860px;
    margin: 0 auto;
    padding: clamp(1.25rem, 3vw, 2rem);
    border: 1px solid color-mix(in srgb, var(--cc-border-color, #d5cdc0) 88%, transparent);
    border-radius: var(--cc-radius-xl, 21px);
    background: color-mix(in srgb, var(--cc-bg-secondary, #f7f7f8) 55%, var(--cc-bg-primary, #ffffff));
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
}

.cc-suggest-product-intro p {
    margin: 0;
    color: var(--cc-text-secondary, #7f7c74);
}

.cc-suggest-product-notice {
    padding: 0.85rem 1rem;
    border-radius: var(--cc-radius-md, 12px);
    font-weight: 600;
}

.cc-suggest-product-notice.is-success {
    background: color-mix(in srgb, #22c55e 12%, transparent);
    color: #166534;
}

.cc-suggest-product-notice.is-error {
    background: color-mix(in srgb, #ef4444 12%, transparent);
    color: #991b1b;
}

.cc-suggest-product-form {
    display: grid;
    gap: 1rem;
}

.cc-suggest-product-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.cc-suggest-product-form p {
    margin: 0;
    display: grid;
    gap: 0.4rem;
}

.cc-suggest-product-form label {
    font-weight: 600;
    color: var(--cc-text-heading, #1a1a1a);
}

.cc-suggest-product-form input,
.cc-suggest-product-form textarea {
    width: 100%;
    padding: 0.85rem 1rem;
    border: 1px solid var(--cc-border-color, #d5cdc0);
    border-radius: var(--cc-radius-md, 12px);
    background: var(--cc-bg-primary, #ffffff);
    color: var(--cc-text-primary, #1e1e1e);
    font: inherit;
}

.cc-suggest-product-submit {
    display: flex;
    justify-content: flex-start;
}

@media (max-width: 767px) {
    .cc-suggest-product-grid {
        grid-template-columns: 1fr;
    }
}
