.hhcp-box {
    margin: 1.25rem 0;
    padding: 1.1rem;
    border: 1px solid rgba(0,0,0,.12);
    border-radius: 10px;
}
.hhcp-box h3 { margin: 0 0 .5rem; }
.hhcp-intro { margin-bottom: .75rem; }
.hhcp-lead-time { margin: .5rem 0 1rem; }
.hhcp-field { margin: 0 0 1rem; }
.hhcp-field label { display: block; font-weight: 600; margin-bottom: .35rem; }
.hhcp-field textarea,
.hhcp-field input[type="file"] { width: 100%; box-sizing: border-box; }
.hhcp-field small,
.hhcp-addon small { display: block; margin-top: .35rem; opacity: .75; }
.hhcp-char-count { text-align: right; }
.hhcp-upload-list { display: block; margin-top: .35rem; font-size: .9em; }
.hhcp-addon { margin: .75rem 0 1rem; }
.hhcp-contact-note { margin: 1rem 0 .5rem; font-size: .95em; }
.hhcp-whatsapp { margin: .5rem 0 0; }
.hhcp-example-gallery {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .6rem;
    margin: .75rem 0 1rem;
}
.hhcp-example-item img { width: 100%; height: auto; display: block; border-radius: 8px; }
@media (max-width: 600px) {
    .hhcp-example-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.hhcp-field select {
    width: 100%;
    box-sizing: border-box;
}
.hhcp-size-field {
    border: 0;
    padding: 0;
    margin: 0 0 1rem;
}
.hhcp-size-field legend {
    font-weight: 600;
    margin-bottom: .45rem;
}
.hhcp-size-options {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
    gap: .55rem;
}
.hhcp-size-option {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    padding: .7rem;
    border: 1px solid rgba(0,0,0,.14);
    border-radius: 9px;
    cursor: pointer;
    box-sizing: border-box;
}
.hhcp-size-option.is-recommended {
    border-width: 2px;
}
.hhcp-size-option input[type="radio"] {
    margin: 0 0 .25rem;
}
.hhcp-size-main {
    display: block;
}
.hhcp-recommended-badge {
    display: inline-block;
    margin-left: .25rem;
    padding: .1rem .35rem;
    border: 1px solid currentColor;
    border-radius: 999px;
    font-size: .72em;
    font-weight: 600;
    vertical-align: middle;
}
.hhcp-size-recommendation {
    display: block;
    margin-top: .45rem;
    opacity: .8;
}
@media (max-width: 480px) {
    .hhcp-size-options { grid-template-columns: 1fr; }
}


.hhcp-gallery-copy { margin: .75rem 0 .5rem; }
.hhcp-gallery-copy h4 { margin: 0 0 .25rem; }
.hhcp-gallery-copy p { margin: 0; opacity: .85; }

/* v1.4.0 — final price per size */
.hhcp-size-option .hhcp-size-price {
    display:block;
    margin-top:4px;
    font-weight:600;
    color:#2f363c;
}
.hhcp-selected-price {
    margin-top:10px;
    padding:10px 12px;
    border:1px solid #e2e5e8;
    border-radius:7px;
    background:#fafbfb;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    font-size:13px;
}
.hhcp-selected-price[hidden] { display:none!important; }
.hhcp-selected-price strong { font-size:15px; }
