/* ================================
   Ortak panel sayfalama - tüm bileşenlerde aynı (minimal, ortalı)
   Duyurular, Haberler, Etkinlikler, Son Yayınlar, liste sayfaları
   ================================ */

/* Sayfa yokken sayfalama alanını gizle */
.etkinlikler-pagination.pagination-empty {
    display: none !important;
}

.etkinlikler-pagination {
    padding: 0.5rem 0;
    margin-top: 0.5rem;
    border-top: 1px solid #e8eaed;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.list-page-smart-pagination {
    width: 100%;
}

/* Ortak sarmalayıcı: anasayfa panelleri + tam liste sayfaları */
.etkinlikler-pagination .pagination-wrapper,
.list-page-smart-pagination .pagination-wrapper {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 0.45rem 0.55rem;
    font-size: 0.8125rem;
    color: #64748b;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    /* duyurular/haber/etkinlik css içindeki genel .pagination-wrapper kartını sıfırla */
    margin-top: 0;
    padding: 0.35rem 0.15rem;
    background: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
}

.etkinlikler-pagination .pagination-controls,
.list-page-smart-pagination .pagination-controls {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 0.45rem 0.55rem;
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
    max-width: 100%;
}

.etkinlikler-pagination .pagination-info,
.list-page-smart-pagination .pagination-info {
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;
    justify-content: flex-start;
    gap: 0.5rem;
    margin-right: 0;
    flex: 0 0 auto;
    white-space: nowrap;
    background: transparent;
    border: none;
    padding: 0;
}

.etkinlikler-pagination .total-items,
.list-page-smart-pagination .total-items {
    font-weight: 500;
    color: #475569;
}

.etkinlikler-pagination .page-info,
.list-page-smart-pagination .page-info {
    color: #64748b;
}

.etkinlikler-pagination .page-dots,
.list-page-smart-pagination .page-dots {
    color: #cbd5e1;
    margin: 0 0.15rem;
    user-select: none;
}

.etkinlikler-pagination .page-btn,
.list-page-smart-pagination .page-btn {
    min-width: 28px;
    height: 28px;
    padding: 0 0.4rem;
    border: 1px solid #e2e8f0;
    background: #fff;
    border-radius: 6px;
    color: #475569;
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
}

.etkinlikler-pagination .page-btn:hover:not(:disabled),
.list-page-smart-pagination .page-btn:hover:not(:disabled) {
    border-color: color-mix(in srgb, var(--kku-brand, #dc3545) 40%, transparent);
    background: color-mix(in srgb, var(--kku-brand, #dc3545) 6%, transparent);
    color: var(--kku-brand, #dc3545);
}

.etkinlikler-pagination .page-btn.active,
.list-page-smart-pagination .page-btn.active {
    border-color: var(--kku-brand, #dc3545);
    background: color-mix(in srgb, var(--kku-brand, #dc3545) 12%, transparent);
    color: var(--kku-brand, #dc3545);
    cursor: default;
}

.etkinlikler-pagination .page-input,
.list-page-smart-pagination .page-input {
    width: 48px;
    height: 28px;
    padding: 0 0.35rem;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    font-size: 0.8125rem;
    text-align: center;
    color: #475569;
}

.etkinlikler-pagination .page-input:focus,
.list-page-smart-pagination .page-input:focus {
    outline: none;
    border-color: color-mix(in srgb, var(--kku-brand, #dc3545) 50%, transparent);
}

.etkinlikler-pagination .page-go-btn,
.list-page-smart-pagination .page-go-btn {
    height: 28px;
    padding: 0 0.5rem;
    border: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 6px;
    font-size: 0.8125rem;
    color: #475569;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
}

.etkinlikler-pagination .page-go-btn:hover,
.list-page-smart-pagination .page-go-btn:hover {
    border-color: color-mix(in srgb, var(--kku-brand, #dc3545) 40%, transparent);
    background: color-mix(in srgb, var(--kku-brand, #dc3545) 6%, transparent);
    color: var(--kku-brand, #dc3545);
}

.etkinlikler-pagination .page-size-select,
.list-page-smart-pagination .page-size-select {
    height: 28px;
    padding: 0 1.5rem 0 0.5rem;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    font-size: 0.8125rem;
    color: #475569;
    background: #fff;
    cursor: pointer;
    min-width: 0;
    max-width: 120px;
}

.etkinlikler-pagination .page-size-select:focus,
.list-page-smart-pagination .page-size-select:focus {
    outline: none;
    border-color: color-mix(in srgb, var(--kku-brand, #dc3545) 40%, transparent);
}

.etkinlikler-pagination .pagination-next-and-size,
.list-page-smart-pagination .pagination-next-and-size {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    flex-shrink: 0;
    flex-wrap: nowrap;
    justify-content: center;
}

.etkinlikler-pagination .pagination-size-selector,
.list-page-smart-pagination .pagination-size-selector {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.list-page-smart-pagination .list-page-goto-form {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin: 0;
    flex-shrink: 0;
    white-space: nowrap;
}

/* Masaüstü: tüm öğeler tek satırda kalsın (eski bileşen css flex-wrap kurallarını ezer) */
@media (min-width: 769px) {
    .etkinlikler-pagination .pagination-wrapper,
    .list-page-smart-pagination .pagination-wrapper {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: center !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        margin-top: 0 !important;
        padding: 0.35rem 0.15rem !important;
        gap: 0.4rem 0.5rem !important;
    }

    .etkinlikler-pagination .pagination-controls,
    .list-page-smart-pagination .pagination-controls {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        width: auto !important;
        max-width: 100% !important;
        gap: 0.4rem 0.5rem !important;
    }

    .etkinlikler-pagination .pagination-info,
    .list-page-smart-pagination .pagination-info {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
        white-space: nowrap !important;
        background: transparent !important;
        border: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .etkinlikler-pagination .pagination-next-and-size,
    .list-page-smart-pagination .pagination-next-and-size {
        flex-wrap: nowrap !important;
        flex-shrink: 0 !important;
    }

    .etkinlikler-pagination .list-page-goto-form,
    .list-page-smart-pagination .list-page-goto-form {
        flex-shrink: 0 !important;
    }

    .etkinlikler-pagination .page-btn,
    .list-page-smart-pagination .page-btn,
    .etkinlikler-pagination .page-input,
    .list-page-smart-pagination .page-input,
    .etkinlikler-pagination .page-go-btn,
    .list-page-smart-pagination .page-go-btn,
    .etkinlikler-pagination .page-size-select,
    .list-page-smart-pagination .page-size-select,
    .etkinlikler-pagination .page-dots,
    .list-page-smart-pagination .page-dots {
        flex-shrink: 0;
    }

    .etkinlikler-pagination .page-btn.prev-btn,
    .etkinlikler-pagination .page-btn.next-btn,
    .list-page-smart-pagination .page-btn.prev-btn,
    .list-page-smart-pagination .page-btn.next-btn {
        min-width: auto;
        white-space: nowrap;
    }

    .etkinlikler-pagination .page-size-select,
    .list-page-smart-pagination .page-size-select {
        min-width: 88px;
        max-width: 110px;
    }
}

/* ================================
   Mobil: dar ekranda kontrollü sarma
   ================================ */
@media (max-width: 768px) {
    .etkinlikler-pagination,
    .list-page-smart-pagination {
        padding-left: 0;
        padding-right: 0;
    }

    .etkinlikler-pagination .pagination-wrapper,
    .list-page-smart-pagination .pagination-wrapper {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 0.4rem 0.45rem;
        padding: 0.65rem 0.5rem;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
        overflow-x: visible;
    }

    .etkinlikler-pagination .pagination-controls,
    .list-page-smart-pagination .pagination-controls {
        flex-wrap: wrap;
        width: 100%;
    }

    .etkinlikler-pagination .pagination-info,
    .list-page-smart-pagination .pagination-info {
        flex: 1 1 100%;
        width: 100%;
        margin-right: 0;
        justify-content: center;
        text-align: center;
        padding: 0.35rem 0.5rem;
        background: #f8fafc;
        border-radius: 8px;
        border: 1px solid #e8eaed;
        font-size: 0.78rem;
    }

    .etkinlikler-pagination .page-dots,
    .list-page-smart-pagination .page-dots {
        display: none;
    }

    .etkinlikler-pagination .page-btn,
    .list-page-smart-pagination .page-btn {
        min-width: 32px;
        height: 32px;
        padding: 0 0.45rem;
        font-size: 0.78rem;
    }

    .etkinlikler-pagination .page-btn.prev-btn,
    .etkinlikler-pagination .page-btn.next-btn,
    .list-page-smart-pagination .page-btn.prev-btn,
    .list-page-smart-pagination .page-btn.next-btn {
        min-width: auto;
        padding: 0 0.55rem;
    }

    .etkinlikler-pagination .page-input,
    .list-page-smart-pagination .page-input {
        width: 44px;
        height: 32px;
    }

    .etkinlikler-pagination .page-go-btn,
    .list-page-smart-pagination .page-go-btn {
        height: 32px;
    }

    .etkinlikler-pagination .page-size-select,
    .list-page-smart-pagination .page-size-select {
        height: 32px;
        max-width: 108px;
        font-size: 0.75rem;
    }

    .etkinlikler-pagination .pagination-next-and-size,
    .list-page-smart-pagination .pagination-next-and-size {
        display: inline-flex;
        flex-wrap: nowrap;
        align-items: center;
        gap: 0.35rem;
    }

    .etkinlikler-pagination .pagination-controls,
    .list-page-smart-pagination .pagination-controls {
        flex: 1 1 100%;
        width: 100%;
        justify-content: center;
        gap: 0.4rem 0.45rem;
    }
}

@media (max-width: 380px) {
    .etkinlikler-pagination .page-btn.prev-btn,
    .etkinlikler-pagination .page-btn.next-btn,
    .list-page-smart-pagination .page-btn.prev-btn,
    .list-page-smart-pagination .page-btn.next-btn {
        font-size: 0.72rem;
        padding: 0 0.4rem;
    }

    .etkinlikler-pagination .pagination-info,
    .list-page-smart-pagination .pagination-info {
        flex-direction: column;
        gap: 0.2rem;
    }
}
