/* =========================================================
   Főzelék feltét választó – falatka-order-enhancements
   ========================================================= */

.fb-fozelek-feltet {
    margin: 28px 0 0;
    padding: 0;
    border: none;
    background: transparent;
}

.fb-fozelek-feltet__title {
    margin: 0 0 4px;
    font-size: 1.05em;
    font-weight: 700;
    letter-spacing: 0.01em;
    color: #1a1a1a;
    text-transform: none;
    border: none;
    padding: 0;
}

.fb-fozelek-feltet__subtitle {
    margin: 0 0 14px;
    font-size: 0.82em;
    color: #777;
}

/* ---- Lista ---- */
.fb-fozelek-feltet__list {
    list-style: none;
    margin: 0 0 14px;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

.fb-fozelek-feltet__item {
    margin: 0;
}

/* Alap kártya */
.fb-fozelek-feltet__label {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 10px 12px;
    border: 1px solid #ddd;
    border-radius: 3px;
    background: #fff;
    cursor: pointer;
    transition: border-color 0.12s ease, box-shadow 0.12s ease;
    font-size: 0.875em;
    line-height: 1.35;
    color: #1a1a1a;
    min-height: 44px;
    height: 100%;
    box-sizing: border-box;
}

.fb-fozelek-feltet__label:hover {
    border-color: #999;
}

/* Kijelölt kártya */
.fb-fozelek-feltet__item:has(.fb-fozelek-feltet__checkbox:checked) .fb-fozelek-feltet__label {
    border-color: #c0392b;
    box-shadow: 0 0 0 1px #c0392b;
    background: #fff8f7;
}

.fb-fozelek-feltet__checkbox {
    flex-shrink: 0;
    margin-top: 3px;
    width: 15px;
    height: 15px;
    accent-color: #c0392b;
    cursor: pointer;
}

/* Name + price stacked in their own column */
.fb-fozelek-feltet__text {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.fb-fozelek-feltet__name {
    font-weight: 500;
    word-break: break-word;
    hyphens: auto;
}

.fb-fozelek-feltet__item:has(.fb-fozelek-feltet__checkbox:checked) .fb-fozelek-feltet__name {
    color: #c0392b;
}

.fb-fozelek-feltet__price {
    display: block;
    font-size: 0.78em;
    color: #888;
    white-space: nowrap;
}

.fb-fozelek-feltet__price--free {
    color: #5a8a5a;
}

/* ---- Gomb ---- */
.fb-fozelek-feltet__actions {
    margin-top: 6px;
}

.fb-fozelek-feltet .fb-fozelek-feltet__btn,
.fb-fozelek-feltet .fb-fozelek-feltet__btn.button,
.woocommerce .fb-fozelek-feltet .fb-fozelek-feltet__btn {
    display: block !important;
    width: 100% !important;
    padding: 13px 20px !important;
    font-size: 0.9em !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    text-align: center !important;
    background-color: #5c9a5c !important;
    color: #fff !important;
    border: none !important;
    border-radius: 3px !important;
    cursor: pointer !important;
    transition: background-color 0.15s ease, opacity 0.15s ease !important;
    line-height: 1.4 !important;
    box-shadow: none !important;
}

.fb-fozelek-feltet .fb-fozelek-feltet__btn:hover,
.fb-fozelek-feltet .fb-fozelek-feltet__btn.button:hover,
.woocommerce .fb-fozelek-feltet .fb-fozelek-feltet__btn:hover {
    background-color: #4a8050 !important;
    color: #fff !important;
}

.fb-fozelek-feltet .fb-fozelek-feltet__btn:disabled,
.fb-fozelek-feltet .fb-fozelek-feltet__btn.button:disabled {
    opacity: 0.55 !important;
    cursor: not-allowed !important;
}

/* ---- Értesítések ---- */
.fb-fozelek-feltet__notice {
    margin-top: 12px;
    padding: 11px 14px 11px 44px;
    border-radius: 3px;
    font-size: 0.85em;
    line-height: 1.5;
    position: relative;
}

/* "i" ikon ugyanolyan mint az oldalon */
.fb-fozelek-feltet__notice::before {
    content: 'i';
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.8em;
    line-height: 20px;
    text-align: center;
}

.fb-fozelek-feltet__notice a {
    font-weight: 700;
    text-decoration: underline;
}

.fb-fozelek-feltet__notice--success {
    background: #f2f9f2;
    border: 1px solid #c0392b;
    border-left-width: 4px;
    color: #1a1a1a;
}

.fb-fozelek-feltet__notice--success::before {
    background: #5c9a5c;
    color: #fff;
    content: '✓';
}

.fb-fozelek-feltet__notice--success a {
    color: #c0392b;
}

.fb-fozelek-feltet__notice--error {
    background: #fff5f5;
    border: 1px solid #c0392b;
    border-left-width: 4px;
    color: #1a1a1a;
}

.fb-fozelek-feltet__notice--error::before {
    background: #c0392b;
    color: #fff;
    content: '!';
}

.fb-fozelek-feltet__notice--info {
    background: #fff9f0;
    border: 1px solid #c0392b;
    border-left-width: 4px;
    color: #1a1a1a;
}

.fb-fozelek-feltet__notice--info::before {
    background: #c0392b;
    color: #fff;
}

/* ---- Kosár + Checkout: feltét meta megjelenítés ---- */

/* Target the variation dl that contains Feltétek — use attribute selectors for max specificity */
td.product-name dl.variation:has(.variation-Felttek),
td.product-name dl.variation:has(.variation-Feltt-k),
.woocommerce-cart td.product-name dl.variation.fb-feltet-meta,
.woocommerce-checkout td.product-name dl.variation.fb-feltet-meta,
.woocommerce-checkout-review-order td.product-name dl.variation,
.elementor-widget-woocommerce-checkout-page td.product-name dl.variation,
.elementor-widget-woocommerce-cart td.product-name dl.variation.fb-feltet-meta,
dl.variation.fb-feltet-meta {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin: 4px 0 0 !important;
    padding: 0 !important;
    font-size: 0.85em !important;
    color: #555 !important;
    list-style: none !important;
}

td.product-name dl.variation:has(.variation-Felttek) dt,
td.product-name dl.variation:has(.variation-Felttek) dd,
td.product-name dl.variation:has(.variation-Feltt-k) dt,
td.product-name dl.variation:has(.variation-Feltt-k) dd,
.woocommerce-cart td.product-name dl.variation.fb-feltet-meta dt,
.woocommerce-cart td.product-name dl.variation.fb-feltet-meta dd,
.woocommerce-checkout td.product-name dl.variation dt,
.woocommerce-checkout td.product-name dl.variation dd,
.elementor-widget-woocommerce-checkout-page td.product-name dl.variation dt,
.elementor-widget-woocommerce-checkout-page td.product-name dl.variation dd,
dl.variation.fb-feltet-meta dt,
dl.variation.fb-feltet-meta dd {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: inherit !important;
    color: inherit !important;
}

dl.variation.fb-feltet-meta dt::after {
    content: ' ';
}

/* Hide the built-in Nap variation/attribute display — day is already in the [Hétfő] prefix */
.woocommerce-cart td.product-name .variation dt.variation-Nap,
.woocommerce-cart td.product-name .variation dd.variation-Nap,
.woocommerce-checkout td.product-name .variation dt.variation-Nap,
.woocommerce-checkout td.product-name .variation dd.variation-Nap,
td.product-name dt.variation-Nap,
td.product-name dd.variation-Nap {
    display: none !important;
}

/* Hide WCPA plugin's Nap attribute — day is already in the [Hétfő] prefix */
td.product-name .wcpa-attributes,
.product-name .wcpa-attributes {
    display: none !important;
}

/* Feltétek variation row on checkout — force visible */
dt.variation-Felttek,
dd.variation-Felttek,
dt.variation-Feltt-k,
dd.variation-Feltt-k,
.product-name dt[class*="variation-Felt"],
.product-name dd[class*="variation-Felt"] {
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.product-name dd[class*="variation-Felt"] p {
    display: inline !important;
    margin: 0 !important;
}

/* ---- Reszponzív ---- */
@media (max-width: 520px) {
    .fb-fozelek-feltet__list {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 340px) {
    .fb-fozelek-feltet__list {
        grid-template-columns: 1fr;
    }
}
