/* ============================================================
   Bugün Ne Yesek — tasarım sistemi
   Sıcak mutfak paleti: kiremit + zeytin + krem.
   Dar ekranda yoğun yerleşim, altta sekme çubuğu.
   ============================================================ */

:root {
    --kiremit: #c25e33;
    --kiremit-koyu: #a24b26;
    --kiremit-soft: #fbeee7;
    --zeytin: #4a7c59;
    --zeytin-soft: #eaf1ec;
    --amber: #d99327;
    --amber-soft: #fdf3e2;
    --kirmizi: #c0392b;

    --zemin: #fbf7f2;
    --yuzey: #ffffff;
    --murekkep: #2b2420;
    --solgun: #8a7f73;
    --cizgi: #ece2d7;

    --r-kk: .4rem;
    --r-o: .6rem;
    --r-b: .9rem;

    --golge: 0 1px 2px rgba(43, 36, 32, .05), 0 1px 8px rgba(43, 36, 32, .04);
    --alt-cubuk: 3.6rem;
}

* {
    -webkit-tap-highlight-color: transparent;
}

body {
    background-color: var(--zemin);
    color: var(--murekkep);
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
    font-size: .95rem;
    line-height: 1.45;
}

/* Alt sekme çubuğunun içeriği örtmemesi için */
main.container {
    padding-left: .85rem;
    padding-right: .85rem;
    padding-top: .9rem;
    padding-bottom: calc(var(--alt-cubuk) + env(safe-area-inset-bottom, 0px) + 1rem);
}

@media (min-width: 992px) {
    main.container {
        padding-bottom: 2rem;
    }
}

h1, .h4 {
    letter-spacing: -.015em;
    font-weight: 650;
}

a {
    color: var(--kiremit-koyu);
    text-underline-offset: .15em;
}

a:hover {
    color: var(--kiremit);
}

/* ---------- Üst çubuk ---------- */
.ust-cubuk {
    background: linear-gradient(135deg, var(--kiremit) 0%, var(--kiremit-koyu) 100%);
    color: #fff;
    padding: .5rem 0;
    position: sticky;
    top: 0;
    z-index: 1030;
}

.ust-cubuk .marka {
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    font-size: 1.02rem;
    letter-spacing: -.01em;
    display: inline-flex;
    align-items: center;
    gap: .4rem;
}

.ust-cubuk .aile-adi {
    color: rgba(255, 255, 255, .82);
    font-size: .78rem;
}

.ust-cubuk .ust-link {
    color: rgba(255, 255, 255, .9);
    text-decoration: none;
    font-size: .85rem;
    padding: .3rem .55rem;
    border-radius: var(--r-kk);
}

.ust-cubuk .ust-link:hover,
.ust-cubuk .ust-link.aktif {
    background-color: rgba(255, 255, 255, .16);
    color: #fff;
}

/* ---------- Alt sekme çubuğu (mobil) ---------- */
.alt-cubuk {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1040;
    display: flex;
    background-color: var(--yuzey);
    border-top: 1px solid var(--cizgi);
    padding-bottom: env(safe-area-inset-bottom, 0px);
    box-shadow: 0 -2px 12px rgba(43, 36, 32, .06);
}

.alt-cubuk a {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .1rem;
    padding: .4rem .2rem .45rem;
    color: var(--solgun);
    text-decoration: none;
    font-size: .66rem;
    font-weight: 500;
    min-height: var(--alt-cubuk);
}

.alt-cubuk a .sekme-simge {
    font-size: 1.22rem;
    line-height: 1;
}

.alt-cubuk a.aktif {
    color: var(--kiremit);
}

.alt-cubuk a.aktif .sekme-simge {
    transform: translateY(-1px);
}

@media (min-width: 992px) {
    .alt-cubuk {
        display: none;
    }
}

/* ---------- Kartlar ---------- */
.card {
    border: 1px solid var(--cizgi);
    border-radius: var(--r-b);
    box-shadow: var(--golge);
    background-color: var(--yuzey);
}

.card-header {
    background-color: transparent;
    border-bottom: 1px solid var(--cizgi);
    font-weight: 650;
    font-size: .88rem;
    padding: .6rem .85rem;
    letter-spacing: -.01em;
}

.card-body {
    padding: .85rem;
}

.card-footer {
    padding: .7rem .85rem;
    background-color: transparent;
    border-top: 1px solid var(--cizgi);
}

/* Bölüm başlığı: kart üstünde küçük etiket */
.bolum-basligi {
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--solgun);
    margin-bottom: .35rem;
}

/* ---------- Düğmeler ---------- */
.btn {
    border-radius: var(--r-o);
    font-weight: 550;
    font-size: .88rem;
}

.btn-sm {
    font-size: .8rem;
    padding: .28rem .6rem;
}

.btn-primary {
    --bs-btn-bg: var(--kiremit);
    --bs-btn-border-color: var(--kiremit);
    --bs-btn-hover-bg: var(--kiremit-koyu);
    --bs-btn-hover-border-color: var(--kiremit-koyu);
    --bs-btn-active-bg: var(--kiremit-koyu);
    --bs-btn-active-border-color: var(--kiremit-koyu);
    --bs-btn-disabled-bg: var(--kiremit);
    --bs-btn-disabled-border-color: var(--kiremit);
}

.btn-outline-primary {
    --bs-btn-color: var(--kiremit-koyu);
    --bs-btn-border-color: #e3c7b6;
    --bs-btn-hover-bg: var(--kiremit);
    --bs-btn-hover-border-color: var(--kiremit);
    --bs-btn-active-bg: var(--kiremit-koyu);
    --bs-btn-active-border-color: var(--kiremit-koyu);
}

.btn-outline-secondary {
    --bs-btn-color: #6b6259;
    --bs-btn-border-color: var(--cizgi);
    --bs-btn-hover-bg: #f3ece4;
    --bs-btn-hover-border-color: #ddd0c2;
    --bs-btn-hover-color: var(--murekkep);
}

.btn-success {
    --bs-btn-bg: var(--zeytin);
    --bs-btn-border-color: var(--zeytin);
    --bs-btn-hover-bg: #3d6849;
    --bs-btn-hover-border-color: #3d6849;
}

/* Düz link yerine: küçük, çerçeveli eylem düğmesi */
.eylem {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    border: 1px solid var(--cizgi);
    background-color: var(--yuzey);
    color: #6b6259;
    border-radius: var(--r-kk);
    font-size: .76rem;
    font-weight: 550;
    padding: .2rem .45rem;
    line-height: 1.3;
    text-decoration: none;
    cursor: pointer;
}

.eylem:hover {
    background-color: #f6efe8;
    border-color: #ddd0c2;
    color: var(--murekkep);
}

.eylem-tehlike {
    color: var(--kirmizi);
}

.eylem-tehlike:hover {
    background-color: #fdf0ee;
    border-color: #f0c8c2;
    color: var(--kirmizi);
}

/* ---------- Rozet ve çipler ---------- */
.badge {
    font-weight: 600;
    font-size: .68rem;
    letter-spacing: .01em;
    border-radius: 999px;
    padding: .18em .55em;
}

.cip {
    display: inline-flex;
    align-items: center;
    gap: .22rem;
    background-color: var(--kiremit-soft);
    color: var(--kiremit-koyu);
    border-radius: 999px;
    font-size: .68rem;
    font-weight: 600;
    padding: .16rem .5rem;
    white-space: nowrap;
}

.cip-notr {
    background-color: #f2ece5;
    color: #6b6259;
}

.cip-yesil {
    background-color: var(--zeytin-soft);
    color: #35604a;
}

.cip-amber {
    background-color: var(--amber-soft);
    color: #97661a;
}

/* ---------- Formlar ---------- */
.form-control, .form-select {
    border-radius: var(--r-o);
    border-color: var(--cizgi);
    font-size: .9rem;
}

.form-control:focus, .form-select:focus {
    border-color: #e0b49c;
    box-shadow: 0 0 0 .18rem rgba(194, 94, 51, .12);
}

.form-label {
    font-size: .8rem;
    font-weight: 600;
    margin-bottom: .2rem;
    color: #5f574f;
}

.form-text {
    font-size: .75rem;
    color: var(--solgun);
}

.form-check-input:checked {
    background-color: var(--kiremit);
    border-color: var(--kiremit);
}

.validation-summary-valid {
    display: none;
}

/* ---------- Tablolar ---------- */
.table {
    font-size: .88rem;
    margin-bottom: 0;
}

.table > thead {
    font-size: .74rem;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--solgun);
}

.table > thead th {
    background-color: #f7f1ea;
    border-bottom-color: var(--cizgi);
    font-weight: 700;
    padding: .45rem .6rem;
}

.table > tbody td, .table > tbody th {
    padding: .5rem .6rem;
    border-color: #f3ebe2;
    vertical-align: middle;
}

/* ---------- Uyarı kutuları ---------- */
.alert {
    border-radius: var(--r-o);
    border-width: 1px;
    font-size: .88rem;
    padding: .6rem .8rem;
}

.alert-success {
    background-color: var(--zeytin-soft);
    border-color: #cfe0d4;
    color: #2f5640;
}

.alert-danger {
    background-color: #fdf0ee;
    border-color: #f2ccc6;
    color: #97372c;
}

.alert-light {
    background-color: #f8f2ec;
    border-color: var(--cizgi);
    color: #5f574f;
}

.alert-warning {
    background-color: var(--amber-soft);
    border-color: #f0dcb9;
    color: #8a5e17;
}

/* Boş durum */
.bos-durum {
    text-align: center;
    padding: 2rem 1rem;
    color: var(--solgun);
}

.bos-durum .bos-simge {
    font-size: 2.2rem;
    display: block;
    margin-bottom: .4rem;
}

/* ---------- Kişi noktası ---------- */
.eater-dot {
    display: inline-block;
    width: .7rem;
    height: .7rem;
    border-radius: 50%;
    vertical-align: middle;
}

/* ---------- Giriş / kayıt ---------- */
.auth-card {
    max-width: 26rem;
    margin: 2rem auto;
}

.auth-logo {
    font-size: 2rem;
    line-height: 1;
}

/* ============================================================
   Panel
   ============================================================ */
.panel-ogun {
    display: flex;
    gap: .6rem;
    align-items: flex-start;
    border-bottom: 1px solid #f3ebe2;
    padding: .6rem 0;
}

.panel-ogun:first-child { padding-top: 0; }
.panel-ogun:last-child { border-bottom: 0; padding-bottom: 0; }

.panel-ogun .ogun-simge {
    font-size: 1.35rem;
    line-height: 1.1;
    width: 1.8rem;
    text-align: center;
    flex: 0 0 auto;
}

.panel-ogun-baslik {
    font-size: .68rem;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--solgun);
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: .3rem;
    flex-wrap: wrap;
}

.panel-ogun-yemek {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: -.01em;
}

.panel-ogun.yapildi .panel-ogun-yemek {
    color: #8d857c;
}

.panel-ogun .ogun-alt {
    font-size: .76rem;
    color: var(--solgun);
}

/* Bugün kartı biraz öne çıksın */
.bugun-karti {
    border-color: #e6d3c5;
    background: linear-gradient(180deg, #fffdfb 0%, var(--yuzey) 100%);
}

/* Eksik malzeme listesi */
.eksik-satir {
    display: flex;
    justify-content: space-between;
    gap: .5rem;
    padding: .35rem 0;
    border-bottom: 1px solid #f3ebe2;
    font-size: .85rem;
}

.eksik-satir:last-child { border-bottom: 0; }
.eksik-satir .eksik-not { font-size: .72rem; color: var(--solgun); }

/* Hafta şeridi */
.hafta-seridi th {
    font-weight: 600;
    font-size: .78rem;
    background-color: #f7f1ea;
    white-space: nowrap;
}

.hafta-seridi tr.bugun > th,
.hafta-seridi tr.bugun > td {
    background-color: var(--kiremit-soft);
}

.hafta-seridi td { font-size: .8rem; }

/* ============================================================
   Plan takvimi
   ============================================================ */
.plan-takvim {
    table-layout: fixed;
    min-width: 46rem;
    margin-bottom: 0;
}

.plan-takvim th {
    font-size: .76rem;
    vertical-align: top;
    background-color: #f7f1ea;
    padding: .45rem .5rem;
}

.plan-takvim td {
    vertical-align: top;
    padding: .28rem;
    min-width: 11rem;
    background-color: #fdfaf7;
}

.plan-takvim tr.bugun > th,
.plan-takvim tr.bugun > td {
    background-color: var(--kiremit-soft);
}

.plan-gun {
    font-size: .82rem;
    line-height: 1.25;
    white-space: nowrap;
}

.plan-hucre {
    position: relative;
    border: 1px solid var(--cizgi);
    border-radius: var(--r-o);
    min-height: 4.1rem;
    padding: .35rem .4rem 1.35rem;
    background-color: var(--yuzey);
    transition: border-color .15s ease, box-shadow .15s ease;
}

.plan-hucre:hover {
    border-color: #ddb59c;
    box-shadow: 0 1px 6px rgba(194, 94, 51, .12);
}

.plan-hucre.bos {
    border-style: dashed;
    background-color: #fdfaf7;
}

.plan-hucre.yapildi {
    background-color: var(--zeytin-soft);
    border-color: #cfe0d4;
}

.plan-hucre-ac {
    display: block;
    width: 100%;
    text-align: left;
    border: 0;
    background: none;
    padding: 0;
    color: inherit;
}

.plan-yemek {
    padding-right: .9rem;
    font-size: .84rem;
    font-weight: 550;
    line-height: 1.3;
    margin-bottom: .1rem;
}

.plan-hucre-alt {
    display: flex;
    flex-wrap: wrap;
    gap: .2rem;
    margin-top: .2rem;
}

.plan-hucre-yapildi {
    position: absolute;
    right: .3rem;
    bottom: .18rem;
    line-height: 1;
}

.plan-hucre-yapildi button {
    border: 0;
    background: none;
    padding: 0;
    font-size: .95rem;
    color: var(--zeytin);
}

@media (max-width: 575.98px) {
    .plan-takvim th:first-child,
    .plan-takvim td:first-child {
        position: sticky;
        left: 0;
        z-index: 1;
        background-color: #f7f1ea;
    }

    .plan-takvim tr.bugun > th:first-child {
        background-color: var(--kiremit-soft);
    }
}

/* Hücre düzenleme kutusundaki öneriler */
.oneri-listesi {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
    gap: .3rem;
    max-height: 17rem;
    overflow-y: auto;
}

.oneri {
    text-align: left;
    border: 1px solid var(--cizgi);
    border-radius: var(--r-o);
    background-color: var(--yuzey);
    padding: .35rem .5rem;
    line-height: 1.25;
}

.oneri:hover:not(:disabled) {
    border-color: #ddb59c;
    background-color: var(--kiremit-soft);
}

.oneri:disabled { opacity: .45; }
.oneri-ad { display: block; font-size: .83rem; font-weight: 550; }
.oneri-meta { display: block; font-size: .69rem; color: var(--solgun); }

/* ============================================================
   Yemek listesi
   ============================================================ */
.yemek-karti {
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: .7rem .75rem;
}

.yemek-karti .yemek-ad {
    font-size: .95rem;
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: -.01em;
    text-decoration: none;
    color: var(--murekkep);
}

.yemek-karti .yemek-ad:hover { color: var(--kiremit-koyu); }

.yemek-meta {
    font-size: .74rem;
    color: var(--solgun);
    display: flex;
    flex-wrap: wrap;
    gap: .3rem;
    margin: .2rem 0 .35rem;
}

.puan { color: var(--amber); letter-spacing: -.05em; }
.puan .bos { color: #e2d7cb; }

.favori-dugme {
    border: 0;
    background: none;
    padding: 0 0 0 .3rem;
    font-size: 1rem;
    color: var(--amber);
    line-height: 1;
}

.yemek-durum { font-size: .74rem; margin-top: auto; }
.durum-hazir { color: var(--zeytin); }
.durum-bekle { color: #97661a; }

/* ============================================================
   Stok
   ============================================================ */
.stok-satiri td { padding: .35rem .5rem; }
.stok-satiri.var > td:first-child { color: var(--solgun); }

.stok-dugmeler {
    display: inline-flex;
    border: 1px solid var(--cizgi);
    border-radius: 999px;
    overflow: hidden;
    background-color: var(--yuzey);
}

.stok-dugmeler button {
    border: 0;
    background: none;
    font-size: .72rem;
    font-weight: 600;
    padding: .18rem .5rem;
    color: var(--solgun);
    white-space: nowrap;
}

.stok-dugmeler button + button { border-left: 1px solid var(--cizgi); }
.stok-dugmeler button.secili-yok { background-color: #f2ece5; color: #6b6259; }
.stok-dugmeler button.secili-az { background-color: var(--amber-soft); color: #97661a; }
.stok-dugmeler button.secili-var { background-color: var(--zeytin-soft); color: #35604a; }

/* ============================================================
   Alışveriş
   ============================================================ */
.alisveris-kalem {
    border-bottom: 1px solid #f3ebe2;
    padding: .38rem 0;
}

.alisveris-kalem:last-child { border-bottom: 0; }
.alisveris-kalem.alindi .kalem-ad { text-decoration: line-through; color: #a79d93; }

.kalem-tik {
    border: 0;
    background: none;
    padding: 0;
    font-size: 1.15rem;
    line-height: 1.1;
    color: var(--zeytin);
}

.kalem-ad { font-size: .9rem; font-weight: 550; }
.kalem-not { font-size: .72rem; color: var(--solgun); }

.magaza-basligi {
    display: flex;
    align-items: center;
    gap: .35rem;
}

/* ============================================================
   Yazdırma
   ============================================================ */
@media print {
    .ust-cubuk, .alt-cubuk, .alert, .yazdirma-gizle, .kalem-tik { display: none !important; }
    body { background-color: #fff; }
    .card { border: 0; break-inside: avoid; box-shadow: none; }
    .card-header { border-bottom: 1px solid #000; font-weight: 700; padding-left: 0; }
    .alisveris-kalem { border-bottom: 0; padding: .12rem 0; }
    .alisveris-kalem::before { content: "☐ "; }
    main.container { max-width: none; padding-bottom: 0; }
}

/* Dar ekranda öğün tamamlama düğmesi: yalnızca işaret */
.ogun-dugme {
    width: 2.1rem;
    height: 2.1rem;
    border-radius: 50%;
    border: 1.5px solid var(--cizgi);
    background-color: var(--yuzey);
    color: var(--solgun);
    font-size: 1rem;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.ogun-dugme.tamam {
    background-color: var(--zeytin);
    border-color: var(--zeytin);
    color: #fff;
}

/* Katlanabilir filtre kutusu: dar ekranda liste görünür kalsın */
.filtre-kutusu > summary {
    list-style: none;
    cursor: pointer;
    font-size: .8rem;
    font-weight: 600;
    color: var(--kiremit-koyu);
    padding: .2rem 0;
    display: flex;
    align-items: center;
    gap: .3rem;
}

.filtre-kutusu > summary::-webkit-details-marker { display: none; }

.filtre-kutusu > summary::before {
    content: "⚙️";
    font-size: .85rem;
}

.filtre-kutusu > summary::after {
    content: "▾";
    color: var(--solgun);
}

.filtre-kutusu[open] > summary::after { content: "▴"; }

/* ------------------------------------------------------------
   Plan takvimi — dar ekranda gün kartları
   Tablo yatay kaydırma yerine güne bir kart olacak biçimde açılır;
   öğün adı hücrenin üstüne data-ogun'dan yazılır.
   ------------------------------------------------------------ */
@media (max-width: 767.98px) {
    .plan-takvim-sarmal { overflow: visible; }

    .plan-takvim {
        min-width: 0;
        display: block;
    }

    .plan-takvim thead { display: none; }

    .plan-takvim tbody,
    .plan-takvim tr,
    .plan-takvim td,
    .plan-takvim th {
        display: block;
        width: auto;
    }

    .plan-takvim tr {
        background-color: var(--yuzey);
        border: 1px solid var(--cizgi);
        border-radius: var(--r-b);
        margin-bottom: .5rem;
        padding: .55rem .6rem .35rem;
        box-shadow: var(--golge);
    }

    .plan-takvim tr.bugun {
        border-color: #e0b49c;
        background-color: var(--kiremit-soft);
    }

    .plan-takvim th.plan-gun {
        border: 0;
        padding: 0 0 .4rem;
        background-color: transparent !important;
        position: static;
        font-size: .95rem;
        font-weight: 650;
    }

    .plan-takvim th.plan-gun span {
        display: inline !important;
        margin-right: .35rem;
    }

    .plan-takvim td {
        border: 0;
        padding: 0 0 .45rem;
        background-color: transparent !important;
        min-width: 0;
    }

    .plan-takvim td::before {
        content: attr(data-ogun);
        display: block;
        font-size: .66rem;
        text-transform: uppercase;
        letter-spacing: .04em;
        color: var(--solgun);
        font-weight: 700;
        margin-bottom: .15rem;
    }

    .plan-hucre {
        min-height: 0;
        padding-bottom: 1.2rem;
    }
}

/* Hücrenin düzenlenebilir olduğunu gösteren ipucu */
.hucre-duzenle {
    position: absolute;
    top: .25rem;
    right: .35rem;
    font-size: .72rem;
    color: #c9bdb1;
    line-height: 1;
}

.plan-hucre:hover .hucre-duzenle,
.plan-hucre:focus-within .hucre-duzenle {
    color: var(--kiremit);
}

/* ---- Besin değerleri ---- */
.besin-satiri {
    display: flex;
    align-items: baseline;
    gap: .3rem;
}

.besin-deger {
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: -.02em;
    color: var(--kiremit-koyu);
}

.besin-birim {
    font-size: .85rem;
    color: var(--solgun);
}

/* Makro dağılım çubuğu */
.makro-cubuk {
    display: flex;
    height: .55rem;
    border-radius: 999px;
    overflow: hidden;
    background-color: #f1e9e0;
}

.makro-karb { background-color: var(--amber); }
.makro-protein { background-color: var(--kiremit); }
.makro-yag { background-color: var(--zeytin); }

.makro-liste {
    display: flex;
    flex-wrap: wrap;
    gap: .7rem;
    font-size: .76rem;
}

.makro-oge {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
}

.makro-ad { color: var(--solgun); }
.makro-gram { color: var(--solgun); }

/* Günlük kalori çubuğu */
.gun-kalori th { font-weight: 550; font-size: .82rem; background-color: transparent; }
.gun-kalori tr.bugun th { color: var(--kiremit-koyu); }

.kalori-cubuk {
    background-color: #f1e9e0;
    border-radius: 999px;
    height: .5rem;
    min-width: 3rem;
}

.kalori-cubuk span {
    display: block;
    height: 100%;
    border-radius: 999px;
    background-color: var(--kiremit);
}

/* ---- Çip biçiminde çoklu seçim ---- */
.cip-liste {
    max-height: 13rem;
    overflow-y: auto;
    border: 1px solid var(--cizgi);
    border-radius: var(--r-o);
    padding: .45rem;
    background-color: #fdfaf7;
}

.cip-grup + .cip-grup { margin-top: .5rem; }

.cip-grup-baslik {
    font-size: .68rem;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--solgun);
    font-weight: 700;
    margin-bottom: .2rem;
}

.cip-secim {
    display: inline-block;
    border: 1px solid var(--cizgi);
    background-color: var(--yuzey);
    color: #5f574f;
    border-radius: 999px;
    font-size: .78rem;
    padding: .2rem .6rem;
    margin: 0 .2rem .25rem 0;
    cursor: pointer;
    user-select: none;
}

.cip-secim:hover { border-color: #ddb59c; }

.btn-check:checked + .cip-secim {
    background-color: var(--kiremit);
    border-color: var(--kiremit);
    color: #fff;
}

/* İstenmeyen malzemeler için ayrı renk: seçim "olumsuz" anlam taşıyor */
.btn-check:checked + .cip-secim-hayir {
    background-color: var(--kirmizi);
    border-color: var(--kirmizi);
    color: #fff;
}

.cip-secim-hayir {
    display: inline-block;
    border: 1px solid var(--cizgi);
    background-color: var(--yuzey);
    color: #5f574f;
    border-radius: 999px;
    font-size: .78rem;
    padding: .2rem .6rem;
    margin: 0 .2rem .25rem 0;
    cursor: pointer;
    user-select: none;
}

.cip-secim-hayir:hover { border-color: #e6b3ab; }
