/* Nome file: wp-content/plugins/aldos-prodotti-omaggio/assets/css/frontend.css */

.apo-card { background: var(--apo-card-bg, #f9f9f9); border: 1px solid var(--apo-card-border, #e0e0e0); border-radius: 12px; padding: 15px; margin: 20px 0; font-size: 0.9em; }
.widget_shopping_cart .apo-card { margin: 15px; width: auto; }
.apo-card-title { font-size: 1.1em; font-weight: 600; margin: 0 0 10px 0; }
.apo-card-main { display: flex; align-items: center; gap: 15px; }
.apo-card-icon-wrapper { flex-shrink: 0; display: flex; align-items: center; justify-content: center; }
.apo-card-icon-wrapper img { max-width: 100%; max-height: 100%; height: auto; width: auto; object-fit: contain; }
.apo-card-content { flex-grow: 1; }
.apo-card-content p { margin: 0; line-height: 1.4; }
.apo-card-action { margin-top: 12px; }
.apo-open-selection-btn { width: 100%; text-align: center; background-color: var(--apo-button-bg, #ff6600) !important; color: var(--apo-button-text, #ffffff) !important; border-radius: 5px !important; border: none !important; padding: 10px !important; line-height: 1.2 !important; height: auto !important; transition: opacity 0.2s; }
.apo-open-selection-btn:hover { opacity: 0.85; }

.apo-selected-summary { margin-top: 15px; padding-top: 15px; border-top: 1px dashed var(--apo-card-border, #e0e0e0); font-size: 0.9em; line-height: 1.5; }
.apo-selected-summary strong { font-weight: 600; }

.apo-submenu { margin-top: 15px; padding-top: 15px; border-top: 1px solid var(--apo-card-border, #e0e0e0); }
.apo-submenu-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px; }
.apo-submenu-header h4 { margin: 0; font-size: 1.1em; }
.apo-submenu-counter { font-size: 0.9em; color: #555; }
.apo-back-btn { background: none; border: none; cursor: pointer; color: #777; font-size: 0.9em; }
.apo-samples-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); gap: 10px; }
.apo-sample-item label { display: block; cursor: pointer; border: 2px solid #f0f0f1; border-radius: 8px; padding: 5px; background: #fff; box-shadow: 0 1px 3px rgba(0,0,0,0.05); text-align: center; }
.apo-sample-item input[type="checkbox"] { display: none; }
.apo-sample-item img { width: 100%; height: auto; aspect-ratio: 1/1; object-fit: cover; border-radius: 6px; margin-bottom: 5px; }
.apo-sample-item .apo-sample-name { font-size: 0.85em; display: block; margin-top: 5px; line-height: 1.2; color: #333; }
.apo-sample-item input[type="checkbox"]:checked + label { border-color: var(--apo-checkbox-active, #0073aa); }

.apo-submenu-footer { margin-top: 20px; text-align: right; }
.apo-confirm-selection-btn { width: 100%; text-align: center; background-color: var(--apo-confirm-button-bg, #28a745) !important; color: var(--apo-confirm-button-text, #ffffff) !important; border: none !important; border-radius: 5px !important; padding: 10px !important; line-height: 1.2 !important; height: auto !important; transition: opacity 0.2s; }
.apo-confirm-selection-btn:hover { opacity: 0.85; }

.apo-checkout-summary-content { display: flex; align-items: center; gap: 10px; padding: 10px 0; }
.apo-mini-icon { width: 24px; height: 24px; border-radius: 4px; }