.acpo-front { margin: 20px 0 20px; clear: both; }
.acpo-front .acpo-heading { font-size: 18px; margin: 0 0 12px; color: #252525; }
.acpo-front .acpo-group { display: block; padding: 14px; margin: 12px 0; border: 1px solid #dcdcdc; border-radius: 7px; background: #fff; min-width: 0; }
.acpo-front legend { font-weight: 700; padding: 0 8px; font-size: 15px; }
.acpo-front legend small { display: inline; font-weight: 400; font-size: 12px; color: #777; }
.acpo-front .acpo-choice { display: flex; align-items: center; gap: 12px; width: 100%; margin: 8px 0; padding: 10px; border: 1px solid #e2e2e2; border-radius: 5px; cursor: pointer; box-sizing: border-box; background: #fff; }
.acpo-front .acpo-choice:has(input:checked) { border-color: #333; box-shadow: inset 0 0 0 1px #333; }
.acpo-front .acpo-choice input[type=radio] { margin: 0; flex: 0 0 auto; width: 18px; height: 18px; }
.acpo-front .acpo-photo { width: 55px; height: 55px; display: block; flex-shrink: 0; }
.acpo-front .acpo-photo img { width: 55px; height: 55px; object-fit: contain; margin: 0; }
.acpo-front .acpo-choice-title { flex: 1; display: block; min-width: 80px; line-height: 1.4; }
.acpo-front .acpo-choice-title small { display: block; font-size: 11px; color: #717171; word-break: break-word; }
.acpo-front .acpo-choice-price { font-weight: 600; text-align: right; white-space: nowrap; }
.acpo-front .acpo-none { font-size: 13px; }
.acpo-front .acpo-qty { margin: 12px 0 0; }
.acpo-front .acpo-qty label { font-weight: 600; display: flex; align-items: center; gap: 12px; }
.acpo-front .acpo-qty input[type=number] { max-width: 95px; width: 80px; margin: 0; padding: 6px; text-align: center; }
.acpo-front .acpo-qty small { color: #6a6a6a; display: block; margin-top: 4px; }
.acpo-front .acpo-estimate { padding: 10px 0; border-top: 1px solid #ddd; margin-top: 8px; }
.acpo-front .acpo-estimate strong { margin-left: 7px; }
.acpo-front .acpo-estimate small { display: block; color: #777; }
@media(max-width:600px) { .acpo-front .acpo-choice { flex-wrap: wrap; gap: 7px; } .acpo-front .acpo-choice-price { margin-left: 26px; } }

/* v0.2.8: explicit standalone option-purchase forms OUTSIDE the cabinet add-to-cart form. */
.acpo-standalone { clear:both; margin:24px 0; padding:17px; border:1px solid #dedede; border-radius:8px; background:#fff; }
.acpo-standalone h3 { font-size:19px; margin:0 0 6px; }
.acpo-standalone > p { margin:5px 0 13px; }
.acpo-standalone-form { display:flex; gap:12px; align-items:center; flex-wrap:wrap; padding:12px 0; border-top:1px solid #e9e9e9; }
.acpo-standalone-picture img { width:65px; height:65px; object-fit:contain; }
.acpo-standalone-description { flex:1; min-width:170px; display:block; }
.acpo-standalone-description small,.acpo-standalone-price { display:block; }
.acpo-standalone-description small {color:#666;}
.acpo-standalone-form label {font-size:13px;white-space:nowrap;}
.acpo-standalone-form input[type=number] {width:65px; padding:7px; margin-left:4px;}
.acpo-standalone-form button.acpo-buy-only {background:#ad3027;color:#fff;border:0;min-height:40px;padding:8px 14px;font-weight:700;cursor:pointer;}
.acpo-standalone .acpo-standalone-note {font-size:12px;color:#666;}

/* Inline standalone CTA next to the selected option. Keep JS-controlled visibility. */
.acpo-front .acpo-only-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.acpo-front .acpo-only-actions .acpo-buy-selected-only { background:#ad3027; border:0; color:#fff; font-weight:700; min-height:42px; cursor:pointer; }
.acpo-front .acpo-only-actions button:disabled { opacity:.65; cursor:wait; }
.acpo-front .acpo-only-actions small { color:#555; font-size:12px; flex:1 1 180px; }

/* Angliana button style — moved from WP Zone Custom CSS (v0.3.2). */
.acpo-only-actions {
    width: 100%;
    margin-top: 12px;
}
.acpo-only-actions .acpo-buy-selected-only,
.acpo-only-actions .button.acpo-buy-selected-only {
    display: block;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
    padding: 16px 20px;
    border-radius: 6px;
    text-decoration: none !important;
}
.acpo-only-actions .acpo-buy-selected-only:hover,
.acpo-only-actions .acpo-buy-selected-only:focus,
.acpo-only-actions .button.acpo-buy-selected-only:hover,
.acpo-only-actions .button.acpo-buy-selected-only:focus {
    background-color: #b64542 !important;
    border-color: #b64542 !important;
    text-decoration: none !important;
    box-shadow: none !important;
}
/* Only conceal fallback when JS has initialized inline controls. */
body.acpo-js-inline-only .acpo-standalone { display:none; }

/* v0.3.4: main photo preview, without changing WooThumbs slides or thumbnail gallery. */
.acpo-gallery-image-preview {
    position: absolute;
    z-index: 15;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: #fff;
    pointer-events: auto;
    box-sizing: border-box;
}
.acpo-gallery-image-preview[hidden] { display: none !important; }
.acpo-gallery-image-preview__image {
    display: block;
    max-width: 100%;
    max-height: 100%;
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #fff;
    padding: 0;
    margin: 0;
}
