#radio-toggle@media (max-width: 768px) {
    #messages {
        background-size:
            360px auto,
            /* desen biraz küçülür */
            80px auto,
            /* logo küçülür */
            cover;
        padding-right: 16px;
    }
}

@media (max-width:992px) {

    .app-grid {

        grid-template-columns: 1fr
    }

}

@media (max-width: 991.98px) {
    .app-grid {
        display: flex;
        flex-direction: column;
    }

    /* Sıra: önce kanallar, sonra sohbet */
    #channel-sidebar {
        order: 1;
        /* YÜKSEKLİK PROBLEMİNİ ÇÖZEN KISIM */
        height: auto;
        /* 100%'ü boz */
        min-height: 0;
        flex: 0 0 auto;
        /* İçeriği kadar yer kaplasın */

        border: 0;
        border-radius: 0;
        background: transparent;
        padding: 0 8px 4px;
        max-height: none;
        margin-left: 0;
        margin-bottom: .5rem;
    }

    .chat-card {
        order: 2;
        flex: 1 1 auto;
        /* kalan tüm alan sohbet alanına */
    }

    #userlist-sidebar {
        order: 3;
    }

    /* Kanallar yatay sekme gibi */
    #channel-sidebar #tabs {
        display: flex;
        flex-direction: row;
        gap: 0px;
        overflow-x: auto;
        white-space: nowrap;
    }

    #channel-sidebar .channel-head {
        display: none;
        /* mobilde başlığı gizleyebilirsin */
    }
}

@media (max-width: 991.98px) {

    /* Kanal panelini ayrı bir kutu gibi değil, üstteki tab bar gibi göster */
    #channel-sidebar {
        border: 0;
        border-radius: 0;
        background: transparent;
        padding: 0 8px 4px;
        max-height: none;
        margin-left: 0;
    }

    /* "KANALLAR" başlığını mobilde gizle */
    #channel-sidebar .channel-head {
        display: none !important;
    }

    /* Kanallar yatay şerit olsun (eski #tabs davranışı) */
    #channel-sidebar #tabs {
        display: flex !important;
        flex-direction: row !important;
        align-items: center;
        gap: 6px;
        padding: 6px 0;
        overflow-x: auto;
        overflow-y: hidden;
        white-space: nowrap;
        scrollbar-width: thin;
    }

    /* Her kanal pill gibi dursun */
    #channel-sidebar #tabs > * {
        flex: 0 0 auto;
        border-radius: 999px !important;
        margin: 0;
    }

    /* Mobilde X sağa yapışmasın, normal dursun */
    #channel-sidebar #tabs .close-tab-button {
        margin-left: 4px;
        /* auto değil */
    }
}

@media (max-width: 768px) {
    .mobile-top-switcher {
        display: flex;
    }
}

@media (max-width:768px) {
    #messages {
        background-size:
            85px auto,
            360px auto,
            cover !important;

        background-position:
            right 12px top 10px,
            center center,
            center top !important;
    }
}

@media (max-width: 360px) {
    .pm-head-modern .pm-actions-modern .pm-btn {
        width: 30px;
        height: 30px;
        border-radius: 9px;
        font-size: 13px;
        line-height: 30px;
    }

    .pm-head-modern .pm-actions-modern .pm-btn i {
        font-size: 13px;
    }
}

@media (max-width: 420px) {
    .swal2-popup.sticker-swal {
        width: calc(100vw - 24px) !important;
    }

    .sticker-search-btn {
        min-width: 72px;
        padding: 0 12px;
    }
}

@media (max-width: 768px) {
    /* YouTube Paneli (Dock) */
    #yt-dock {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;   /* Sol boşluğu sıfırla */
        right: 0 !important;  /* Sağ boşluğu sıfırla */
        width: 100% !important; /* Ekranı tam kapla */
        height: auto !important;
        aspect-ratio: 16 / 9; /* Video oranını koru */
        z-index: 9999 !important;
        background: #000;
        margin: 0 !important; /* Dış boşlukları sıfırla */
        padding: 0 !important; /* İç boşlukları sıfırla */
    }

    /* Iframe'in kenarlara tam yapışması için */
    #yt-dock iframe {
        width: 100% !important;
        height: 100% !important;
        border: none !important;
        display: block; /* Alt kısımdaki hayalet boşluğu siler */
    }

    /* Kapatma butonu panelin üstüne binsin */
    .yt-dock-top {
        position: absolute;
        top: 5px;
        right: 5px;
        z-index: 10000;
    }
}

@media (max-width: 768px) {
    /* İçinde iframe olan kart üste yapışır */
    .yt-resim-kart:has(iframe) {
        position: sticky;
        top: 0;
        z-index: 1000;
        max-width: 100% !important;
        border-radius: 0;
    }
}

@media (max-width: 768px) {
    #mobile-tab-btn {
        display: inline-block !important; /* HTML'deki display:none'ı ezer */
        height: 40px;
        margin-left: 0px;
        font-weight: bold;
        padding: 0 10px;
    }
}

@media (max-width: 768px){
  #mobile-tab-btn{ display:inline-flex; align-items:center; justify-content:center; }
}

@media (max-width: 768px) {
    #mobile-tab-btn {
        display: block !important; /* Veya inline-block, tasarımına göre */
    }
}

@media (max-width: 576px) {
/* 1. Mavi Radyo Butonunu (Radio Toggle) küçültme */



    /* Eğer butonun kendisi #radio-toggle ise */

    #radio-toggle {

        padding: 5px 5px !important;
        /* Dikey/yatay boşlukları azalt */

        font-size: 6px;
        /* Metin varsa küçült */

        /* Metin varsa ve gizlemek istiyorsanız: */

        /* width: auto; max-width: 70px; gibi bir kısıtlama ekleyebilirsiniz */

    }



    /* Görseldeki "Radyo" metnini kapsayan öğeyi gizle (Örn: span) */

    #radio-toggle span {
        /* Lütfen bu selektörü HTML yapınıza göre kontrol edin */

        display: none;

    }



    /* Ikon boyutu ve butonu sıkıştır */

    #radio-toggle i {

        font-size: 18px;

    }

/* 2. Tema Butonunu Küçültme (Görüntüdeki Ay Ikonu) */

    .theme-btn-img {

        width: 38px;
        /* 44px'ten 38px'e düşür */

        height: 38px;

        /* Diğer stil kuralları otomatik olarak uygulanacaktır (border-radius, background) */

    }



    /* Üst çubuktaki (topbar) boşluğu da daralt */

    .topbar {

        gap: 4px;
        /* Öğeler arası boşluğu 0'dan 4px'e çıkar (biraz nefes alması için) */

        padding: 4px;
        /* Padding'i 4px'e çıkar */

    }

/* 3. Logonun Esnekliği */

    .topbar .logo-container {
        /* Logo ve başlığı içeren kapsayıcıyı hedefleyin */

        flex-shrink: 1;
        /* Sıkışmaya izin ver */

        min-width: 0;
        /* Gerekirse minimum genişliği sıfırla */

        overflow: hidden;
        /* Taşma olursa metni kes */

    }



    /* Metin taşarsa (örneğin h1), onu kes */

    .login-brand h1 {

        white-space: nowrap;

        overflow: hidden;

        text-overflow: ellipsis;
        /* Metin taşarsa üç nokta koy */

    }

body,

    #main,

    .app-grid,

    .chat-card {

        overflow-x: hidden !important;

    }

    #main {

        padding: 0;
        /* Dış boşlukları kaldırın */

    }



    /* 0) Mobil tipografi: TEK KAYNAK */

    :root {

        --text-size: 13px;

    }



    /* beden metin */

    #messages {

        font-size: 13.5px;

        line-height: 1.45;

    }



    /* sohbet metni */

    #tabs button {

        font-size: 12.5px;

    }



    .inputbar input {

        font-size: 12px;

    }



    /* iOS zoom fix */



    /* 1) Grid → tek sütun */

    .app-grid {

        grid-template-columns: 1fr !important;

        gap: 10px;

        height: calc(100dvh - var(--topbar-h));

        padding: 8px;

    }



    /* 2) Topbar kompakt */

    .topbar {

        height: 51px;

        padding: 3px;

        gap: 0px;

        /* Yeni Kural: Esnekliği artır, sığmazsa küçülmesine izin ver */

        flex-shrink: 1;
        /* Öğelerin küçülmesine izin ver */

        min-width: 0;
        /* İçeriğin taşmasını engellemek için */

    }



    /* Öğelerin küçülmesine izin ver, minimum genişlik koyma */

    .topbar > * {

        min-width: 0;

        flex-shrink: 1;

    }

/* Sekme şeridi daha sıkı */

    #tabs {

        gap: 4px;

        padding: 4px 6px;

        max-height: 42px;

        border-radius: 0 0 4px 4px;

        /* eskisi 48px idi */

        overflow-y: hidden;

        overflow-x: auto;

        scrollbar-width: thin;

    }



    /* Sekme butonları daha küçük */

    #tabs button {

        font-size: 12px;

        /* eskisi 13–14px */

        padding: .28rem .50rem;

        border-radius: 10px;

        /* daha ince görünüm */

        gap: .35rem;

        flex: 0 0 auto;

        /* shrink yok; yatay kaydır */

    }



    /* Kapat (X) düğmesi ufalt */

    #tabs .close-tab-button {

        font-size: 14px;

        margin-left: 2px;

        padding: 0 .15rem;

        opacity: .8;

    }



    /* Aktif sekmede gölgeyi azalt → daha kompakt */

    #tabs button.active {

        box-shadow: 0 3px 10px rgba(59, 130, 246, .18);

    }

#topic-header,

    #greeting-message {

        display: none !important;

    }

#tabs {

        display: flex;

        flex-wrap: wrap;

        /* çoksa 2+ satıra sarılsın */

        gap: 3px;

        padding: 5px 3px;



        max-height: 92px;

        /* görünür yükseklik (2 satır gibi) */

        overflow-y: auto;

        /* sadece tab alanı kayar */

        overflow-x: hidden;

        /* yatay kaydırma yok */

        -webkit-overflow-scrolling: touch;

        /* iOS akıcı scroll */

        background: var(--panel);

        border-bottom: 1px solid var(--border);

    }



    #tabs button {

        flex: 0 0 auto;

        max-width: none;

        font-size: 12.5px;

        padding: .35rem .6rem;

    }

#toggle-userlist-mobile {

        display: inline-grid;

    }



    #toggle-userlist {

        display: none;

    }



    #userlist-sidebar {

        position: fixed;



        right: 0;

        bottom: 0;

        width: min(50vw, 340px);

        transform: translateX(100%);

        transition: transform .25s ease;

        border-left: 1px solid var(--border, #e5e7eb);

        border-radius: 0 0 0 0;

        z-index: 1050;

        background: var(--panel, #fff);

        overflow-y: auto;

        -webkit-overflow-scrolling: touch;

        will-change: transform;

    }



    body.userlist-open #userlist-sidebar {

        transform: none;

    }



    .userlist-dim {

        position: fixed;

        inset: 0;

        background: rgba(2, 6, 23, .45);

        backdrop-filter: blur(2px);

        opacity: 0;

        visibility: hidden;

        transition: .2s;

        z-index: 1045;

    }



    body.userlist-open .userlist-dim {

        opacity: 1;

        visibility: visible;

    }

#toggle-userlist-mobile {

        position: relative;

        z-index: 1101;

        /* sidebar(1050) ve dim(1045)’in üstünde */

        /* istersen küçük bir offset: */

        /* margin: 6px 8px; */

    }

/* Varsayılan olarak mobil butonu Topbar içinde görünür yapalım */

    #toggle-userlist-mobile {

        display: block !important;
        /* Mobil butonu görünür yap */

        /* Buton için mobil boyutlandırma (eğer topbar içinde ise) */

        width: 38px;

        height: 38px;

        font-size: 20px;

        border-radius: 60%;

        color: var(--primary);

        background: var(--soft);

        padding: 0;

        cursor: pointer;

    }



    /* 1. Kural: PM (Özel Mesaj) açıkken gizle */

    /* Uygulamanız PM açıldığında body'ye 'pm-open' sınıfını ekliyorsa: */

    body.pm-open #toggle-userlist-mobile {

        display: none !important;

    }



    /* 2. Kural: Status (Durum/Servis Mesajı) açıkken gizle */

    /* Uygulamanız Status açıldığında body'ye 'status-open' sınıfını ekliyorsa: */

    body.status-open #toggle-userlist-mobile {

        display: none !important;

    }



    /* 💡 NOT: Kanal açıkken (body'de bu sınıflar yoksa) butonu göstermeye devam eder. */

.nice-modal .modal-dialog {
        margin: 1rem;
        max-width: 100%;
    }

    .nice-modal .modal-content {
        border-radius: 16px;
    }

body.mode-channel #toggle-userlist-mobile {
        display: block !important;
    }

.mobile-top-switcher {
        display: flex;
        gap: 8px;
        padding: 5px;
        margin: 0px 0 0;
        background: var(--panel, #fff);
        border: 1px solid var(--border, #e5e7eb);
        border-radius: 0px;
    }

    /* MOBİLDE ESKİ TAB BAR (SAĞ SİDEBAR) GİZLENSİN */
    #channel-sidebar {
        display: none !important;
    }

.pm-actions {
        gap: 4px;
        flex-wrap: wrap;
        /* dar ekranda alt satıra geçsin */
    }

    .pm-actions .btn {
        padding: 2px 6px !important;
        font-size: 12px !important;
        line-height: 1.1;
        border-radius: 8px;
    }

    .pm-actions .btn i {
        font-size: 14px;
        margin-right: 4px;
    }

.toast {
        max-width: 180px !important;
        padding: 5px 7px !important;
        font-size: 11.5px !important;
    }

    .toast .t-ico {
        width: 12px !important;
        height: 12px !important;
        font-size: 11px !important;
    }

#popup-notice {
        top: 8px !important;
        right: 8px !important;
        padding: 5px 7px !important;
        font-size: 11.5px !important;
        max-width: 180px !important;
        border-radius: 8px !important;
    }

.modal.nice-modal .modal-dialog {
        margin: 0;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        max-width: 100%;
        transform: translateY(100%);
        transition: .2s ease;
    }

    .modal.show.nice-modal .modal-dialog {
        transform: translateY(0);
    }

    .modal.nice-modal .modal-content {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }

/* Topic alanı daha ince görünsün */
    #topic-header,
    .topic-box {
        padding: 6px 8px !important;
        margin: 4px 0 8px !important;
        border-radius: 0 0 12px 12px !important;
        padding-right: 12px !important;
        /* logodan dolayı verdiğin 140px'i mobilde iptal */
    }

    .topic-box-title {
        font-size: 12px !important;
        font-weight: 700 !important;
        margin-bottom: 4px !important;
        gap: 6px !important;
    }

    .topic-box-text {
        font-size: 12.5px !important;
        line-height: 1.35 !important;

        /* Çok uzunsa 2 satır göster, fazlasını kes */
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
    }

    .topic-box-meta {
        margin-top: 4px !important;
        font-size: 11px !important;
        gap: 4px !important;
        opacity: .75 !important;
    }

.pm-head-modern .pm-actions-modern {
        gap: 5px;
        /* buton aralığı */
    }

    .pm-head-modern .pm-actions-modern .pm-btn {
        width: 30px;
        height: 30px;
        padding: 0;
        border-radius: 10px;
        /* daha kompakt */
        font-size: 14px;
        /* icon boyutu */
        line-height: 34px;
    }

    .pm-head-modern .pm-actions-modern .pm-btn i {
        font-size: 12px;
        /* FA icon */
    }

.topbar {
        /* Üst padding'i cihazın güvenli alanına göre ayarlar */
        padding-top: var(--safe-top, 20px) !important;
        height: calc(var(--topbar-h) + var(--safe-top, 0px));
        display: flex;
        align-items: center;
    }

    #main {
        /* Uygulamanın tam ekran yüksekliğini cihaz tipine göre sabitler */
        height: 100dvh;
    }

    .app-grid {
        /* Topbar yüksekliği arttığı için grid alanını yeniden hesaplıyoruz */
        height: calc(100dvh - (var(--topbar-h) + var(--safe-top, 0px)));
    }

.inputbar {
        /* Alt kısımda kaydırma çubuğu için ekstra boşluk bırakır */
        padding-bottom: calc(10px + var(--safe-bottom, 15px)) !important;
        position: sticky;
        bottom: 0;
    }

#messages {
        /* 100dvh (Dynamic Viewport Height) kullanımı ekran kaymalarını bitirir */
        height: auto;
        flex: 1;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

.avatar-sidebar {
        padding: 10px;
        width: 60vw;
        /* Mobilde biraz daha daraltabiliriz */
    }

    .avatar-header h5 {
        font-size: 16px;
    }

    .avatar-grid {
        /* Mobilde daha fazla avatarı yan yana getirerek alanı verimli kullan */
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 8px;
    }

    .avatar-grid img {
        border-radius: 10px;
        /* Küçük resimler için daha küçük radius */
    }

    /* İnce ayar: Başlık ve alt butonlar arası mesafe */
    .avatar-header {
        margin-bottom: 10px;
    }

.sticker-bubble {
        max-width: 78vw;
    }

    .sticker-bubble img,
    .sticker-bubble video {
        max-height: 180px;
    }
}
/* ===============================
   MOBIL TOAST FIX (popup-notice)
   =============================== */
@media (max-width: 768px){

  #popup-notice{
    position: fixed !important;
    top: calc(10px + env(safe-area-inset-top));
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;

    transform: translateX(-50%) !important;

    width: auto !important;
    max-width: calc(100vw - 24px);
    height: auto !important;

    padding: 10px 14px;
    border-radius: 12px;

    background: rgba(15, 23, 42, 0.95);
    color: #fff;

    z-index: 999999 !important;
    pointer-events: none;

    opacity: 0;
    visibility: hidden;
  }

  #popup-notice.show{
    opacity: 1;
    visibility: visible;
  }

  /* 🔥 overlay / perdeyi kesin öldür */
  #popup-notice::before,
  #popup-notice::after{
    content: none !important;
    display: none !important;
  }
}
