/* assent/css/style.css - FOXUP SOCIAL MOBILE-FIRST CSS (GÜNCELLENMİŞ) */

/* --- GENEL AYARLAR VE MOBİL RESET --- */
html, body { 
    width: 100%;
    max-width: 100vw;
    font-family: 'Outfit', sans-serif; 
    background-color: #050505; 
    color: #e5e7eb;
    overflow-x: hidden; /* Sağa sola kaymayı kesinlikle engeller */
    -webkit-tap-highlight-color: transparent; /* Mobilde dokunma mavisini kaldırır */
    touch-action: manipulation; /* Çift tıklama ile yakınlaştırmayı engeller */
}

body {
    /* 100dvh (Dynamic Viewport Height): Mobil tarayıcılarda alt/üst barlar açıldığında yüksekliği dinamik hesaplar */
    min-height: 100vh;
    min-height: 100dvh; 
    padding-bottom: env(safe-area-inset-bottom);
}

/* --- YENİ NESİL DARK GLASS EFEKTİ --- */
.glass { 
    background: rgba(10, 10, 10, 0.75); 
    backdrop-filter: blur(20px); 
    -webkit-backdrop-filter: blur(20px); 
    border: 1px solid rgba(255, 255, 255, 0.08); 
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5); 
}

.glass-panel { 
    background: rgba(0, 0, 0, 0.6); 
    backdrop-filter: blur(12px); 
    -webkit-backdrop-filter: blur(12px); 
    border: 1px solid rgba(255, 255, 255, 0.08); 
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3); 
    width: 100%; /* Mobilde taşmayı önler */
    max-width: 100%;
}

/* --- ADRENALİN VE HEYECAN EFEKTLERİ --- */
@keyframes shake {
  0% { transform: translate(1px, 1px) rotate(0deg); }
  10% { transform: translate(-1px, -2px) rotate(-1deg); }
  20% { transform: translate(-3px, 0px) rotate(1deg); }
  30% { transform: translate(3px, 2px) rotate(0deg); }
  40% { transform: translate(1px, -1px) rotate(1deg); }
  50% { transform: translate(-1px, 2px) rotate(-1deg); }
  100% { transform: translate(1px, 1px) rotate(0deg); }
}

.urgent-vibration {
    animation: shake 0.5s infinite;
    background-color: rgba(255, 0, 0, 0.05) !important;
    transition: background-color 0.3s ease;
}

.timer-danger {
    color: #ff0000 !important;
    text-shadow: 0 0 15px rgba(255, 0, 0, 0.8);
    transition: all 0.3s ease;
}

/* --- INPUT VE TEXTAREA DÜZELTMELERİ (iOS ZOOM KORUMASI) --- */
/* iOS Safari'de input'a tıklayınca sayfanın otomatik zoom yapmasını engellemek için font-size minimum 16px olmalı */
input, textarea {
    font-size: 16px !important; 
    transition: all 0.3s ease;
    max-width: 100%;
}

/* Tarayıcı Otomatik Doldurma (Autofill) Rengi Düzeltme */
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus {
    -webkit-text-fill-color: white !important;
    -webkit-box-shadow: 0 0 0px 1000px #111827 inset !important; 
    transition: background-color 5000s ease-in-out 0s;
    caret-color: #a855f7; 
}

/* --- NEON VE GÖRSEL EFEKTLER --- */
.neon-text { 
    text-shadow: 0 0 20px rgba(168, 85, 247, 0.6); 
}

.judge-badge { 
    border: 1px solid #ef4444; 
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.15) 0%, rgba(0,0,0,0) 100%);
    box-shadow: 0 0 15px rgba(239, 68, 68, 0.2);
}

/* Linear mask efekt (Lobi oyuncu listesi kenarları silikleşmesi) */
.mask-linear { 
    -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent); 
    mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent); 
}

/* --- KAYDIRMA ÇUBUĞUNU GİZLEME (No Scrollbar) --- */
.no-scrollbar::-webkit-scrollbar { 
    display: none; 
}
.no-scrollbar { 
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
}

/* --- CHAT PENCERESİ ANİMASYONU --- */
#chatContainer { 
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease-in-out; 
    /* Mobilde chat modalının klavyenin altında kalmaması veya çok uzamaması için */
    max-height: 80dvh; 
}

/* --- GENEL ANİMASYONLAR --- */
@keyframes fade-in {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
.animate-fade-in { 
    animation: fade-in 0.4s cubic-bezier(0.4, 0, 0.2, 1) forwards; 
}

@keyframes float { 
    0% { transform: translateY(0px); } 
    50% { transform: translateY(-10px); } 
    100% { transform: translateY(0px); } 
}
.floating { 
    animation: float 4s ease-in-out infinite; 
}

@keyframes pulse-red { 
    0%, 100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7); } 
    50% { box-shadow: 0 0 0 10px rgba(239, 68, 68, 0); } 
}
.urgent { 
    animation: pulse-red 1s infinite; 
    border-color: #ef4444 !important; 
}

.chat-msg {
    opacity: 0;
    transform: translateY(5px);
    animation: chat-entry 0.3s ease forwards;
}

@keyframes chat-entry {
    to { opacity: 1; transform: translateY(0); }
}