.cookie-consent {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(33, 37, 41, 1);
    color: #fff;
    padding: 1rem;
    z-index: 9999;
    transform: translateY(100%);
    transition: transform 0.3s ease-in-out;
}

.cookie-consent.show {
    transform: translateY(0);
}

.cookie-consent.hiding {
    transform: translateY(100%);
}

.cookie-settings {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-in-out;
}

.cookie-settings.show {
    max-height: 300px;
}

.form-check-input:checked {
    background-color: #0d6efd;
    border-color: #0d6efd;
}

/* Kart düzeni: desktop'ta görsel sabit sütun, mobilde üstte */
.course-card{
    display:grid;
    grid-template-columns: minmax(220px, 32%) 1fr;
    gap:24px;
    align-items: stretch;
}
@media (max-width: 991.98px){
    .course-card{ grid-template-columns: 1fr; }
}

/* Görsel alanı: varsayılan 16:9; dik görselde JS 'is-portrait' ekler */
.bd-course-thumb-wrapper{ display:block; height:100%; }
.bd-course-thumb-bg{
    position:relative;
    width:100%;
    aspect-ratio: 16/9;
    overflow:hidden;
    border-radius:16px;
    background:#f4f4f4;
}
.bd-course-thumb-bg.is-portrait{ aspect-ratio: 3/4; }   /* dik görseller için */
.bd-course-thumb-bg.is-square{ aspect-ratio: 1/1; }     /* kare yakalanırsa */

.bd-course-thumb-bg img{
    width:100%; height:100%;
    object-fit: cover;           /* taşmaları şıkça kırpar */
    object-position: center;
    display:block;
}

/* Başlık ve açıklama taşmasını engelle */
.clamp-2{
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
    overflow:hidden;
}
.clamp-4{
    display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical;
    overflow:hidden;
}

/* Oturum listesi: çok uzarsa kes */
.bd-topic-list{
    display:block;
    max-height: 7.2em;           /* yaklaşık 5 satır */
    overflow:hidden;
}

.course-poster {
    height: 245px;
    width: 100%;
    object-fit: cover;
    border-radius: 16px 16px 0 0;
}

.img-gray {
    filter: grayscale(100%);
}

.img-gray:hover {
    filter: grayscale(0%);
}
