/* =============================================================
   YEDİVEREN MUTFAK - ANA STİL DOSYASI (v2 - Referans Tasarım)
   İçindekiler:
   1. Genel / Yardımcı Sınıflar
   2. Butonlar
   3. Header
   4. Hero
   5. Özellik Kutuları
   6. Kategoriler
   7. Tarif Kartı
   8. Ürün Kartı
   9. Section Başlıkları / Grid
   10. YouTube Bölümü
   11. Footer
   12. Tarif Detay Sayfası
   13. Mağaza / WooCommerce
   14. Formlar / Yorumlar
   15. Responsive
   16. Print (Yazdırma)
   ============================================================= */

/* -------------------------------------------------------------
   1. GENEL / YARDIMCI SINIFLAR
   ------------------------------------------------------------- */
.ym-container{
    max-width: var(--ym-max-width);
    margin: 0 auto;
    padding: 0 32px;
}

.ym-section{ padding: 72px 0; }

.ym-section__header{
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 32px;
}

.ym-section__title{
    font-family: var(--ym-font-heading);
    font-size: 30px;
    font-weight: 700;
    margin: 0;
    color: var(--ym-text);
}

.ym-section__link{
    color: var(--ym-green);
    font-weight: 600;
    font-size: 14px;
    white-space: nowrap;
}
.ym-section__link:hover{ text-decoration: underline; }

.ym-grid{
    display: grid;
    gap: 24px;
}
.ym-grid--3{ grid-template-columns: repeat(3, 1fr); }
.ym-grid--4{ grid-template-columns: repeat(4, 1fr); }
.ym-grid--6{ grid-template-columns: repeat(6, 1fr); }
.ym-grid--7{ grid-template-columns: repeat(7, 1fr); }

.ym-empty-state{
    text-align: center;
    padding: 80px 20px;
    color: var(--ym-text-light);
}

.screen-reader-text{
    position: absolute !important;
    width: 1px; height: 1px;
    overflow: hidden;
    clip: rect(1px,1px,1px,1px);
}

.ym-skip-link{
    position: absolute;
    top: -100px;
    left: 10px;
    background: var(--ym-green);
    color: #fff;
    padding: 10px 16px;
    border-radius: var(--ym-radius-sm);
    z-index: 9999;
    transition: top .2s;
}
.ym-skip-link:focus{ top: 10px; }

.ym-pagination{
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 40px;
}
.ym-pagination .page-numbers{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 10px;
    border-radius: var(--ym-radius-sm);
    background: var(--ym-cream);
    color: var(--ym-text);
    font-weight: 600;
    font-size: 14px;
}
.ym-pagination .page-numbers.current,
.ym-pagination .page-numbers:hover{
    background: var(--ym-green);
    color: #fff;
}

/* Yıldız Derecelendirme */
.ym-stars{ color: var(--ym-star); font-size: 14px; letter-spacing: 1px; }
.ym-star--empty{ color: var(--ym-border); }

/* -------------------------------------------------------------
   2. BUTONLAR (hafif köşeli - hap değil)
   ------------------------------------------------------------- */
.ym-btn{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 15px 30px;
    border-radius: var(--ym-radius-btn);
    font-weight: 600;
    font-size: 15px;
    border: 2px solid transparent;
    transition: all .2s ease;
    white-space: nowrap;
}
.ym-btn--primary{
    background: var(--ym-green);
    color: #fff;
}
.ym-btn--primary:hover{
    background: var(--ym-green-dark);
    transform: translateY(-1px);
    box-shadow: var(--ym-shadow-hover);
}
.ym-btn--outline{
    background: transparent;
    color: var(--ym-text);
    border-color: var(--ym-text);
}
.ym-btn--outline:hover{
    border-color: var(--ym-green);
    color: var(--ym-green);
    background: var(--ym-white);
}
.ym-btn--full{ width: 100%; }
.ym-btn--youtube{
    background: #FF0000;
    color: #fff;
    border-radius: var(--ym-radius-btn);
}
.ym-btn--youtube:hover{ background: #cc0000; }

.ym-icon-text-btn{
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: transparent;
    border: none;
    color: var(--ym-text-light);
    font-size: 14px;
    font-weight: 500;
    padding: 8px 12px;
    border-radius: var(--ym-radius-sm);
}
.ym-icon-text-btn:hover{ background: var(--ym-cream); color: var(--ym-text); }
.ym-icon-text-btn--favorite{ display: inline-flex; align-items: center; }

.ym-icon-btn{
    width: 42px; height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: transparent;
    border: none;
    color: var(--ym-text);
    position: relative;
}
.ym-icon-btn:hover{ background: var(--ym-cream); }
.ym-icon-btn__badge{
    position: absolute;
    top: -2px; right: -2px;
    background: var(--ym-green);
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    min-width: 16px;
    height: 16px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Favori Kalp Butonu */
.ym-favorite-btn{
    width: 34px; height: 34px;
    background: #fff;
    border: none;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ym-text);
    box-shadow: var(--ym-shadow);
}
.ym-favorite-btn.is-active{ color: var(--ym-danger); }
.ym-favorite-btn:hover{ transform: scale(1.08); }

/* -------------------------------------------------------------
   3. HEADER
   ------------------------------------------------------------- */
.ym-header{
    position: sticky;
    top: 0;
    z-index: 500;
    background: #fff;
    border-bottom: 1px solid var(--ym-border);
    transition: box-shadow .2s;
}
.ym-header.is-scrolled{ box-shadow: var(--ym-shadow); }

.ym-header__inner{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    height: 88px;
}

.ym-logo-text{
    font-family: var(--ym-font-heading);
    font-size: 24px;
    font-weight: 700;
    color: var(--ym-green);
    line-height: 1.15;
}

.ym-header__nav{ flex: 1; display: flex; justify-content: flex-start; margin-left: 24px; }

.ym-menu{
    display: flex;
    align-items: center;
    gap: 4px;
}
.ym-menu-item{ position: relative; }
.ym-menu-link{
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 10px 16px;
    font-weight: 600;
    font-size: 14.5px;
    border-radius: var(--ym-radius-sm);
    color: var(--ym-text);
}
.ym-menu-link:hover{ color: var(--ym-green); }

/* Alt Menü (basit dropdown) */
.ym-submenu{
    position: absolute;
    top: 100%; left: 0;
    background: #fff;
    box-shadow: var(--ym-shadow-hover);
    border-radius: var(--ym-radius-md);
    padding: 10px;
    min-width: 220px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: all .2s;
    z-index: 10;
}
.ym-menu-item--has-children:hover > .ym-submenu,
.ym-menu-item--has-children:hover > .ym-mega-panel{
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.ym-submenu .ym-menu-link{ display: block; }

/* Mega Menü Paneli */
.ym-mega-panel{
    position: absolute;
    top: 100%; left: 50%;
    transform: translate(-50%, 8px);
    width: min(900px, 90vw);
    background: #fff;
    box-shadow: var(--ym-shadow-hover);
    border-radius: var(--ym-radius-md);
    opacity: 0;
    visibility: hidden;
    transition: all .2s;
    z-index: 10;
}
.ym-mega-panel__inner{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    padding: 24px;
}

.ym-menu-caret{ opacity: .5; }

.ym-header__actions{
    display: flex;
    align-items: center;
    gap: 2px;
}

.ym-header-cart{
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    border-radius: var(--ym-radius-btn);
    background: var(--ym-cream);
    color: var(--ym-text);
    position: relative;
    margin-left: 6px;
}
.ym-header-cart:hover{ background: var(--ym-green-light); }
.ym-header-cart__count{
    position: absolute;
    top: -6px; right: -6px;
    background: var(--ym-green);
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    min-width: 17px; height: 17px;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    border: 2px solid #fff;
}
.ym-header-cart__total{ font-size: 13px; font-weight: 700; }

.ym-mobile-toggle{ display: none; }

/* Arama Paneli */
.ym-search-panel{
    border-top: 1px solid var(--ym-border);
    background: var(--ym-cream);
    padding: 20px 0;
}
.ym-search-panel[hidden]{ display: none; }
.ym-search-form{ display: flex; gap: 10px; }
.ym-search-form__input{
    flex: 1;
    padding: 14px 20px;
    border-radius: var(--ym-radius-btn);
    border: 1px solid var(--ym-border);
    font-family: var(--ym-font);
    font-size: 15px;
}
.ym-search-form__submit{
    padding: 14px 28px;
    border-radius: var(--ym-radius-btn);
    background: var(--ym-green);
    color: #fff;
    font-weight: 600;
    border: none;
}

/* Mobil Menü */
.ym-mobile-menu{
    display: none;
    background: #fff;
    border-top: 1px solid var(--ym-border);
    padding: 16px 24px;
}
.ym-mobile-menu[hidden]{ display: none; }
.ym-mobile-menu__list li{ border-bottom: 1px solid var(--ym-border); }
.ym-mobile-menu__list a{
    display: block;
    padding: 14px 4px;
    font-weight: 600;
}

/* -------------------------------------------------------------
   4. HERO (tam genişlik)
   ------------------------------------------------------------- */
.ym-hero{
    padding: 64px 0;
    background: var(--ym-cream);
    width: 100%;
}

.ym-hero__inner{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: center;
}

.ym-hero__title{
    font-family: var(--ym-font-heading);
    font-size: 48px;
    line-height: 1.18;
    font-weight: 700;
    margin: 0 0 22px;
    color: var(--ym-text);
}

.ym-hero__desc{
    font-family: var(--ym-font);
    font-size: 17px;
    color: var(--ym-text-light);
    margin-bottom: 34px;
    max-width: 460px;
    line-height: 1.6;
}

.ym-hero__actions{ display: flex; gap: 16px; flex-wrap: wrap; }

.ym-hero__media{ position: relative; }
.ym-hero__image,
.ym-hero-slider__slide img{
    border-radius: var(--ym-radius-lg);
    box-shadow: var(--ym-shadow-hover);
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
}

.ym-hero-slider{ position: relative; }
.ym-hero-slider__slide{ display: none; }
.ym-hero-slider__slide.is-active{ display: block; }

/* -------------------------------------------------------------
   5. ÖZELLİK KUTULARI (hero altı, yatay 5'li)
   ------------------------------------------------------------- */
.ym-features{
    background: #fff;
    padding: 36px 0;
    border-bottom: 1px solid var(--ym-border);
}
.ym-features__grid{
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 24px;
}
.ym-feature-box{
    display: flex;
    align-items: center;
    gap: 14px;
}
.ym-feature-box__icon{
    color: var(--ym-green);
    flex-shrink: 0;
}
.ym-feature-box strong{ display: block; font-size: 14px; font-weight: 700; }
.ym-feature-box span{ display: block; font-size: 12.5px; color: var(--ym-text-light); }

/* -------------------------------------------------------------
   6. KATEGORİLER (tek satır, 7 dikey kart)
   ------------------------------------------------------------- */
.ym-categories-grid{
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 18px;
}
.ym-category-card{
    position: relative;
    display: block;
    border-radius: var(--ym-radius-md);
    overflow: hidden;
    aspect-ratio: 3/4;
    box-shadow: var(--ym-shadow);
    transition: transform .2s;
}
.ym-category-card:hover{ transform: translateY(-3px); box-shadow: var(--ym-shadow-hover); }
.ym-category-card img{
    width: 100%; height: 100%;
    object-fit: cover;
}
.ym-category-card__overlay{
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(23,23,23,.78) 100%);
    display: flex;
    align-items: flex-end;
    padding: 14px;
}
.ym-category-card__name{
    color: #fff;
    font-weight: 700;
    font-size: 13.5px;
}

/* -------------------------------------------------------------
   7. TARİF KARTI
   ------------------------------------------------------------- */
.ym-recipe-card{
    background: #fff;
    border-radius: var(--ym-radius-md);
    overflow: hidden;
    box-shadow: var(--ym-shadow);
    transition: transform .2s, box-shadow .2s;
    border: 1px solid var(--ym-border);
}
.ym-recipe-card:hover{ transform: translateY(-3px); box-shadow: var(--ym-shadow-hover); }

.ym-recipe-card__media{
    position: relative;
    aspect-ratio: 1/1;
}
.ym-recipe-card__media img{ width: 100%; height: 100%; object-fit: cover; }

.ym-recipe-card__play{
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 48px; height: 48px;
    border-radius: 50%;
    background: rgba(83,111,36,.92);
    color: #fff;
    display: flex; align-items: center; justify-content: center;
    padding-left: 3px;
}

.ym-recipe-card__media .ym-favorite-btn{
    position: absolute;
    top: 12px; right: 12px;
}

.ym-recipe-card__body{ padding: 16px; }
.ym-recipe-card__title{ font-size: 15px; font-weight: 700; margin: 0 0 10px; line-height: 1.4; font-family: var(--ym-font); }
.ym-recipe-card__title a:hover{ color: var(--ym-green); }

.ym-recipe-card__meta{
    display: flex; gap: 14px;
    margin-bottom: 10px;
}
.ym-recipe-card__meta-item{
    display: flex; align-items: center; gap: 5px;
    font-size: 12.5px;
    color: var(--ym-text-light);
}

.ym-recipe-card__rating{ display: flex; align-items: center; gap: 6px; }
.ym-recipe-card__rating-count{ font-size: 12.5px; color: var(--ym-text-light); }

/* -------------------------------------------------------------
   8. ÜRÜN KARTI
   ------------------------------------------------------------- */
.ym-product-card{
    background: #fff;
    border-radius: var(--ym-radius-md);
    overflow: hidden;
    box-shadow: var(--ym-shadow);
    transition: transform .2s, box-shadow .2s;
    border: 1px solid var(--ym-border);
}
.ym-product-card:hover{ transform: translateY(-3px); box-shadow: var(--ym-shadow-hover); }

.ym-product-card__media{
    position: relative;
    aspect-ratio: 1/1;
    background: var(--ym-cream);
}
.ym-product-card__media img{ width: 100%; height: 100%; object-fit: cover; }
.ym-product-card__media .ym-favorite-btn{ position: absolute; top: 12px; right: 12px; }

.ym-badge{
    position: absolute;
    top: 12px; left: 12px;
    background: var(--ym-danger);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: var(--ym-radius-sm);
}

.ym-product-card__quick-view{
    position: absolute;
    bottom: -100%;
    left: 0; right: 0;
    background: rgba(23,23,23,.85);
    color: #fff;
    border: none;
    padding: 10px;
    font-size: 13px;
    font-weight: 600;
    transition: bottom .2s;
}
.ym-product-card__media:hover .ym-product-card__quick-view{ bottom: 0; }

.ym-product-card__body{ padding: 16px; }
.ym-product-card__title{ font-size: 15px; font-weight: 700; margin: 0 0 8px; line-height: 1.4; min-height: 42px; font-family: var(--ym-font); }
.ym-product-card__title a:hover{ color: var(--ym-green); }

.ym-product-card__rating{ display: flex; align-items: center; gap: 6px; margin-bottom: 8px; }
.ym-product-card__rating-count{ font-size: 12.5px; color: var(--ym-text-light); }

.ym-product-card__price{
    font-size: 17px;
    font-weight: 700;
    color: var(--ym-green);
    margin-bottom: 14px;
}
.ym-product-card__price del{ color: var(--ym-text-light); font-weight: 400; font-size: 14px; margin-right: 6px; }
.ym-product-card__price ins{ text-decoration: none; }

/* -------------------------------------------------------------
   10. YOUTUBE BÖLÜMÜ (iki sütun)
   ------------------------------------------------------------- */
.ym-youtube-section{ background: var(--ym-cream); }
.ym-youtube-section__grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.ym-youtube-section__promo{
    position: relative;
    min-height: 400px;
    display: flex;
    align-items: center;
}
.ym-youtube-section__bg-image{
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    object-fit: cover;
}
.ym-youtube-section__promo-content{
    position: relative;
    padding: 48px;
    max-width: 480px;
}
.ym-youtube-section__promo-content h2{
    font-family: var(--ym-font-heading);
    font-size: 30px;
    font-weight: 700;
    margin: 0 0 14px;
    color: #fff;
}
.ym-youtube-section__promo-content p{
    color: rgba(255,255,255,.9);
    margin-bottom: 24px;
}

.ym-video-embed{
    position: relative;
    aspect-ratio: 16/9;
    background: #000;
}
.ym-video-embed iframe{
    position: absolute; inset: 0;
    width: 100%; height: 100%;
    border: none;
}
.ym-video-embed--placeholder{
    display: flex; align-items: center; justify-content: center;
    color: #fff;
}
.ym-video-embed--demo{ cursor: pointer; }
.ym-video-embed--demo img{ width: 100%; height: 100%; object-fit: cover; }
.ym-video-embed__play{
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 64px; height: 64px;
    border-radius: 50%;
    background: rgba(23,23,23,.55);
    color: #fff;
    display: flex; align-items: center; justify-content: center;
    padding-left: 4px;
}
.ym-video-embed__caption{
    position: absolute; left: 0; right: 0; bottom: 0;
    padding: 14px 18px;
    background: linear-gradient(0deg, rgba(0,0,0,.65), transparent);
    color: #fff;
    font-size: 13px;
    font-weight: 600;
}

/* -------------------------------------------------------------
   11. FOOTER (koyu zeytin yeşili)
   ------------------------------------------------------------- */
.ym-trust-strip{ background: #fff; padding: 40px 0; border-top: 1px solid var(--ym-border); }
.ym-trust-strip__grid{
    display: grid;
    grid-template-columns: repeat(4, 1fr) 1.4fr;
    gap: 24px;
}
.ym-trust-item{ display: flex; gap: 12px; align-items: flex-start; }
.ym-trust-item svg{ color: var(--ym-green); flex-shrink: 0; }
.ym-trust-item strong{ display: block; font-size: 14px; margin-bottom: 4px; }
.ym-trust-item span{ font-size: 12.5px; color: var(--ym-text-light); }

.ym-newsletter strong{ display: block; margin-bottom: 4px; font-size: 14px; }
.ym-newsletter span{ display: block; font-size: 12.5px; color: var(--ym-text-light); margin-bottom: 12px; }
.ym-newsletter__form{ display: flex; gap: 8px; }
.ym-newsletter__form input{
    flex: 1;
    padding: 12px 16px;
    border-radius: var(--ym-radius-btn);
    border: 1px solid var(--ym-border);
    font-family: var(--ym-font);
    font-size: 13px;
}
.ym-newsletter__form button{
    padding: 12px 22px;
    border-radius: var(--ym-radius-btn);
    background: var(--ym-green);
    color: #fff;
    border: none;
    font-weight: 600;
    font-size: 13px;
}

.ym-footer{ background: var(--ym-green-dark); color: rgba(255,255,255,.78); padding-top: 56px; }
.ym-footer__grid{
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1.2fr;
    gap: 32px;
    padding-bottom: 40px;
}
.ym-footer__brand p{ margin: 14px 0 20px; font-size: 14px; line-height: 1.6; }
.ym-footer .ym-logo-text{ color: #fff; }
.ym-footer__social{ display: flex; gap: 10px; }
.ym-social-icon{
    width: 36px; height: 36px;
    display: flex; align-items: center; justify-content: center;
    background: rgba(255,255,255,.1);
    border-radius: 50%;
    color: #fff;
}
.ym-social-icon:hover{ background: var(--ym-green); }

.ym-footer__col h4{ font-family: var(--ym-font-heading); color: #fff; font-size: 16px; margin: 0 0 18px; }
.ym-footer__menu li,
.ym-footer__contact li{ margin-bottom: 12px; font-size: 14px; }
.ym-footer__menu a:hover{ color: #fff; }

.ym-footer__bottom{ border-top: 1px solid rgba(255,255,255,.14); padding: 20px 0; }
.ym-footer__bottom-inner{
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 13px;
    flex-wrap: wrap;
    gap: 10px;
}
.ym-footer__legal{ display: flex; gap: 20px; }
.ym-footer__legal a:hover{ color: #fff; }

/* -------------------------------------------------------------
   12. TARİF DETAY SAYFASI
   ------------------------------------------------------------- */
.ym-breadcrumbs{
    font-size: 13px;
    color: var(--ym-text-light);
    margin-bottom: 24px;
}
.ym-breadcrumbs a:hover{ color: var(--ym-green); }
.ym-breadcrumbs__sep{ margin: 0 6px; }
.ym-breadcrumbs__current{ color: var(--ym-text); }

.ym-single-layout{
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 48px;
    align-items: start;
}

.ym-recipe-detail__title{ font-family: var(--ym-font-heading); font-size: 36px; font-weight: 700; margin: 0 0 14px; }

.ym-recipe-detail__meta{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 20px;
}
.ym-recipe-detail__rating{ display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--ym-text-light); }
.ym-recipe-detail__actions{ display: flex; gap: 4px; align-items: center; }

.ym-recipe-detail__stats{
    display: flex;
    gap: 32px;
    padding: 20px 0;
    border-top: 1px solid var(--ym-border);
    border-bottom: 1px solid var(--ym-border);
    margin-bottom: 28px;
}
.ym-stat strong{ display: block; font-size: 17px; }
.ym-stat span{ font-size: 12.5px; color: var(--ym-text-light); }

.ym-recipe-detail__video,
.ym-recipe-detail__thumb{
    border-radius: var(--ym-radius-lg);
    overflow: hidden;
    margin-bottom: 28px;
    box-shadow: var(--ym-shadow);
}
.ym-recipe-detail__thumb img{ width: 100%; }

.ym-recipe-detail__description{ margin-bottom: 32px; line-height: 1.75; color: var(--ym-text-light); }

.ym-recipe-block{ margin-bottom: 40px; }
.ym-recipe-block h2{ font-family: var(--ym-font-heading); font-size: 23px; font-weight: 700; margin: 0 0 20px; }
.ym-recipe-block--tips{
    background: var(--ym-green-light);
    padding: 24px;
    border-radius: var(--ym-radius-md);
}
.ym-recipe-block--tips h2{ margin-bottom: 10px; }

.ym-ingredients-list li{
    padding: 12px 0;
    border-bottom: 1px dashed var(--ym-border);
}
.ym-ingredients-list label{ display: flex; align-items: center; gap: 12px; cursor: pointer; }
.ym-ingredients-list input[type="checkbox"]{ width: 18px; height: 18px; accent-color: var(--ym-green); }
.ym-ingredients-list input:checked + span{ text-decoration: line-through; color: var(--ym-text-light); }

.ym-steps-list{ counter-reset: step; }
.ym-steps-list li{
    display: flex;
    gap: 18px;
    margin-bottom: 22px;
}
.ym-steps-list__number{
    flex-shrink: 0;
    width: 34px; height: 34px;
    border-radius: 50%;
    background: var(--ym-green);
    color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-weight: 700;
    font-size: 14px;
}
.ym-steps-list__text{ padding-top: 6px; line-height: 1.6; }

.ym-nutrition-grid{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    text-align: center;
}
.ym-nutrition-grid div{
    background: var(--ym-cream);
    border-radius: var(--ym-radius-sm);
    padding: 18px 10px;
}
.ym-nutrition-grid strong{ display: block; font-size: 18px; }
.ym-nutrition-grid span{ font-size: 12px; color: var(--ym-text-light); }

/* Sidebar / Widget */
.ym-sidebar{ position: sticky; top: 100px; }
.ym-widget{ background: #fff; border: 1px solid var(--ym-border); border-radius: var(--ym-radius-md); padding: 20px; margin-bottom: 20px; }
.ym-widget__title{ font-size: 16px; margin: 0 0 14px; }

.ym-ad-banner{ margin: 24px auto; text-align: center; }

/* -------------------------------------------------------------
   13. MAĞAZA / WOOCOMMERCE
   ------------------------------------------------------------- */
.ym-filter-bar{
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 32px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--ym-border);
}
.ym-filter-chip{
    padding: 8px 18px;
    border-radius: var(--ym-radius-btn);
    background: var(--ym-cream);
    font-size: 13.5px;
    font-weight: 600;
    color: var(--ym-text);
}
.ym-filter-chip.is-active,
.ym-filter-chip:hover{ background: var(--ym-green); color: #fff; }
.ym-sort-form{ margin-left: auto; }
.ym-sort-form select{
    padding: 8px 14px;
    border-radius: var(--ym-radius-sm);
    border: 1px solid var(--ym-border);
    font-family: var(--ym-font);
    font-size: 13.5px;
}

.ym-product-detail{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    margin-bottom: 40px;
}
.woocommerce div.product .ym-product-detail__gallery img{
    border-radius: var(--ym-radius-lg);
}
.woocommerce div.product p.price{ color: var(--ym-green); font-size: 26px; font-weight: 700; }
.woocommerce div.product form.cart .button{
    background: var(--ym-green);
    color: #fff;
    border-radius: var(--ym-radius-btn);
    padding: 14px 32px;
    font-weight: 600;
    border: none;
}
.woocommerce div.product form.cart .button:hover{ background: var(--ym-green-dark); }
.woocommerce div.product .woocommerce-tabs ul.tabs li a{ font-weight: 600; }

/* Hızlı Görünüm Modalı */
.ym-quick-view-modal{
    position: fixed; inset: 0;
    background: rgba(23,23,23,.6);
    display: flex; align-items: center; justify-content: center;
    z-index: 1000;
    padding: 20px;
}
.ym-quick-view-modal[hidden]{ display: none; }
.ym-quick-view-modal__box{
    background: #fff;
    border-radius: var(--ym-radius-lg);
    max-width: 800px;
    width: 100%;
    max-height: 90vh;
    overflow-y: auto;
    position: relative;
    padding: 32px;
}
.ym-quick-view-modal__close{
    position: absolute; top: 16px; right: 16px;
    width: 36px; height: 36px;
    border-radius: 50%;
    background: var(--ym-cream);
    border: none;
    font-size: 18px;
}
.ym-quick-view{ display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
.ym-quick-view__image img{ border-radius: var(--ym-radius-md); }
.ym-quick-view__price{ font-size: 22px; font-weight: 700; color: var(--ym-green); margin: 12px 0; }
.ym-quick-view__desc{ margin-bottom: 20px; color: var(--ym-text-light); font-size: 14px; }
.ym-quick-view__info .ym-btn{ margin-right: 10px; margin-bottom: 10px; }

/* -------------------------------------------------------------
   14. FORMLAR / YORUMLAR
   ------------------------------------------------------------- */
.ym-comments{ margin-top: 56px; }
.ym-comments__title{ font-family: var(--ym-font-heading); font-size: 23px; margin-bottom: 24px; }
.ym-comments__list{ margin-bottom: 32px; }
.ym-comment{ display: flex; gap: 16px; padding: 20px 0; border-bottom: 1px solid var(--ym-border); }
.ym-comment__avatar img{ border-radius: 50%; }
.ym-comment__author{ font-weight: 700; }
.ym-comment__date{ font-size: 12px; color: var(--ym-text-light); margin-bottom: 8px; }

.ym-comment-form p{ margin-bottom: 16px; }
.ym-comment-form label{ display: block; font-weight: 600; font-size: 14px; margin-bottom: 6px; }
.ym-comment-form input[type="text"],
.ym-comment-form input[type="email"],
.ym-comment-form input[type="url"],
.ym-comment-form textarea{
    width: 100%;
    padding: 12px 16px;
    border: 1px solid var(--ym-border);
    border-radius: var(--ym-radius-sm);
    font-family: var(--ym-font);
    font-size: 14px;
}

.ym-page-header{ margin-bottom: 32px; }
.ym-page-header__title{ font-family: var(--ym-font-heading); font-size: 34px; font-weight: 700; }
.ym-page-header__desc{ color: var(--ym-text-light); margin-top: 8px; }

.ym-404{ text-align: center; padding: 80px 20px; }
.ym-404__code{ font-family: var(--ym-font-heading); font-size: 100px; font-weight: 700; color: var(--ym-green-light); margin: 0; }
.ym-404 form{ max-width: 420px; margin: 24px auto; }

/* -------------------------------------------------------------
   15. RESPONSIVE
   ------------------------------------------------------------- */
@media (max-width: 1400px){
    .ym-container{ padding: 0 24px; }
}

@media (max-width: 1200px){
    .ym-grid--6{ grid-template-columns: repeat(3, 1fr); }
    .ym-grid--7{ grid-template-columns: repeat(4, 1fr); }
    .ym-features__grid{ grid-template-columns: repeat(3, 1fr); }
    .ym-trust-strip__grid{ grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 992px){
    .ym-header__nav{ display: none; }
    .ym-mobile-toggle{ display: inline-flex; }
    .ym-mobile-menu[hidden]{ display: none; }
    .ym-mobile-menu{ display: block; }

    .ym-hero__inner{ grid-template-columns: 1fr; }
    .ym-hero__title{ font-size: 36px; }

    .ym-grid--3,
    .ym-grid--4{ grid-template-columns: repeat(2, 1fr); }

    .ym-single-layout{ grid-template-columns: 1fr; }
    .ym-sidebar{ position: static; }

    .ym-footer__grid{ grid-template-columns: 1fr 1fr; }
    .ym-youtube-section__grid{ grid-template-columns: 1fr; }
    .ym-product-detail{ grid-template-columns: 1fr; }
    .ym-quick-view{ grid-template-columns: 1fr; }
}

@media (max-width: 768px){
    .ym-features__grid{ grid-template-columns: repeat(2, 1fr); }
    .ym-categories-grid,
    .ym-grid--7{ grid-template-columns: repeat(3, 1fr); }
    .ym-grid--6{ grid-template-columns: repeat(2, 1fr); }
    .ym-nutrition-grid{ grid-template-columns: repeat(2, 1fr); }
    .ym-trust-strip__grid{ grid-template-columns: 1fr; }
    .ym-section__title{ font-size: 23px; }
    .ym-hero__title{ font-size: 30px; }
}

@media (max-width: 560px){
    .ym-container{ padding: 0 16px; }
    .ym-grid--3,
    .ym-grid--4,
    .ym-grid--6{ grid-template-columns: repeat(2, 1fr); }
    .ym-categories-grid,
    .ym-grid--7{ grid-template-columns: repeat(2, 1fr); }
    .ym-footer__grid{ grid-template-columns: 1fr; }
    .ym-header__inner{ height: 68px; }
    .ym-recipe-detail__stats{ flex-wrap: wrap; gap: 16px; }
    .ym-header-cart__total{ display: none; }
}

/* -------------------------------------------------------------
   16. PRINT (YAZDIRMA) - Tarif Detay Sayfası
   ------------------------------------------------------------- */
@media print{
    .ym-header, .ym-footer, .ym-trust-strip, .ym-sidebar,
    .ym-recipe-detail__actions, .ym-comments, .ym-breadcrumbs,
    .ym-search-panel, .ym-mobile-menu{ display: none !important; }

    .ym-single-layout{ grid-template-columns: 1fr; }
    body{ color: #000; }
}
