/* ========================================
   KURUMSAL TEDARİKÇİ - MOBİL UYUMLULUK
   Tüm sayfalar için responsive CSS
======================================== */

/* ========== GENEL MOBİL AYARLAR ========== */
@media (max-width: 1024px) {
    * { -webkit-tap-highlight-color: transparent; }
    
    body { 
        font-size: 16px; 
        overflow-x: hidden;
    }
    
    /* Dokunma hedefleri — sadece butonlar (tüm <a> etiketlerine min-width taşma yapar) */
    button, .btn, input[type="submit"], input[type="button"],
    .mobile-menu-btn, .cart-btn, .login-btn, .register-btn {
        min-height: 44px;
    }
    
    /* Container ayarları */
    .container { 
        padding: 0 15px !important; 
        width: 100% !important; 
        max-width: 100% !important;
    }
}

/* ========== NAVBAR & MENÜ ========== */
@media (max-width: 1024px) {
    .navbar {
        padding: 12px 15px !important;
        flex-wrap: wrap;
        position: fixed !important;
    }
    
    .logo { 
        font-size: 20px !important; 
        z-index: 1001;
    }
    
    /* Hamburger Buton */
    .mobile-menu-btn {
        display: flex !important;
        align-items: center;
        justify-content: center;
        background: none;
        border: none;
        font-size: 24px;
        color: #374151;
        cursor: pointer;
        padding: 8px;
        z-index: 1001;
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
    }
    
    /* Mobil Menü - Slide-in Overlay */
    .mobile-menu {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background: rgba(0,0,0,0.5);
        z-index: 2000;
        backdrop-filter: blur(4px);
    }
    
    .mobile-menu.active { display: block !important; }
    
    .mobile-menu-panel {
        position: absolute;
        top: 0;
        right: -100%;
        width: 80%;
        max-width: 300px;
        height: 100%;
        background: white;
        padding: 80px 30px 40px;
        display: flex;
        flex-direction: column;
        gap: 20px;
        transition: right 0.3s ease;
        box-shadow: -5px 0 25px rgba(0,0,0,0.1);
    }
    
    .mobile-menu.active .mobile-menu-panel {
        right: 0;
    }
    
    .mobile-nav-links {
        list-style: none;
        padding: 0;
        margin: 0;
        display: flex;
        flex-direction: column;
        gap: 15px;
    }
    
    .mobile-nav-links a {
        font-size: 18px;
        font-weight: 600;
        color: #374151;
        text-decoration: none;
        padding: 12px 20px;
        display: block;
        border-radius: 12px;
        transition: all 0.2s;
    }
    
    .mobile-nav-links a:active, .mobile-nav-links a.active {
        background: rgba(99,102,241,0.1);
        color: #6366f1;
    }
    
    .mobile-close-btn {
        position: absolute;
        top: 20px;
        right: 15px;
        background: none;
        border: none;
        font-size: 28px;
        color: #374151;
        cursor: pointer;
    }

    .nav-links { display: none !important; } /* Desktop menüsünü mobilde gizle */
    
    .nav-right {
        gap: 10px !important;
        margin-right: 50px; /* Hamburger butonu için boşluk */
    }
    
    .cart-btn {
        width: 40px !important;
        height: 40px !important;
    }
}

/* ========== HERO SECTION ========== */
@media (max-width: 1024px) {
    .hero {
        margin-top: 60px !important;
        min-height: auto !important;
        padding: 60px 20px !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
    }
    
    .hero-container {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
        width: 100% !important;
        max-width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        box-sizing: border-box !important;
    }

    .hero-content {
        max-width: 100% !important;
        text-align: center !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }
    
    .hero h1 {
        font-size: 2.2rem !important;
        line-height: 1.2 !important;
        margin-bottom: 20px !important;
        text-align: center !important;
        width: 100% !important;
    }

    .gradient-text {
        background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%) !important;
        -webkit-background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        display: inline-block !important; /* Bir parça genişlik/yükseklik garantilemek için */
    }
    
    .hero p {
        font-size: 1.1rem !important;
        margin-bottom: 25px !important;
        padding: 0 10px !important;
        text-align: center !important;
        max-width: 100% !important;
    }
    
    .badge {
        font-size: 12px !important;
        padding: 6px 14px !important;
        margin-bottom: 15px !important;
    }
    
    .hero-buttons {
        display: flex !important;
        flex-direction: column !important;
        gap: 15px !important;
        align-items: center !important;
        width: 100% !important;
        margin-top: 20px !important;
    }
    
    .hero-buttons .btn {
        width: 100% !important;
        max-width: 300px !important;
        justify-content: center !important;
        padding: 14px 24px !important;
        font-size: 15px !important;
    }
    
    .hero-visual { display: none !important; }
    
    .hero-stats {
        flex-direction: column !important;
        gap: 20px !important;
        padding-top: 20px !important;
    }
    
    .stat-number { font-size: 1.8rem !important; }
}

/* Ana sayfa (body.home): index’teki grid + style.css flex çakışmasını mobilde tek sütuna zorla */
@media (max-width: 1024px) {
    body.home .hero-container {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 20px 16px 32px !important;
        gap: 18px !important;
        box-sizing: border-box !important;
        grid-template-columns: none !important;
    }
    body.home .hero-visual {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }
    body.home .hero-content {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        text-align: center !important;
    }
    body.home .hero h1,
    body.home .hero p,
    body.home .hero .badge {
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* ========== QUICK ACCESS CARDS ========== */
@media (max-width: 1024px) {
    .quick-access { padding: 50px 15px !important; }
    
    .section-title {
        font-size: 1.5rem !important;
        margin-bottom: 30px !important;
    }
    
    .cards-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
    
    .feature-card {
        padding: 30px 20px !important;
    }
    
    .feature-icon {
        width: 60px !important;
        height: 60px !important;
        font-size: 24px !important;
    }
    
    .feature-card h3 {
        font-size: 1.1rem !important;
    }
    
    .feature-card p {
        font-size: 14px !important;
    }
}

/* ========== GİRİŞ/KAYIT SAYFASI (giris.html) ========== */
@media (max-width: 1024px) {
    .auth-container {
        grid-template-columns: 1fr !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        min-height: 100vh !important;
        max-width: 100% !important;
    }
    
    .auth-left { display: none !important; }
    
    .auth-right {
        padding: 80px 20px 40px !important;
        position: relative;
    }
    
    .back-link {
        position: fixed !important;
        top: 20px !important;
        left: 15px !important;
        background: white;
        padding: 8px 16px;
        border-radius: 20px;
        box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        z-index: 100;
    }
    
    .tabs {
        margin-bottom: 25px !important;
    }
    
    .tab-btn {
        font-size: 15px !important;
        padding: 10px 20px !important;
    }
    
    .form-group {
        margin-bottom: 16px !important;
    }
    
    .form-group input {
        padding: 16px !important; /* Mobil zoom önlemi için 16px */
        font-size: 16px !important;
        border-radius: 12px !important;
    }
    
    .social-login {
        flex-direction: column !important;
        gap: 10px !important;
    }
    
    /* Modal Düzenlemeleri */
    .modal-content {
        width: 95% !important;
        padding: 30px 20px !important;
        margin: 10px !important;
        max-height: 90vh;
        overflow-y: auto;
    }
    
    .modal-header h3 {
        font-size: 1.3rem !important;
    }
    
    .code-inputs {
        gap: 8px !important;
    }
    
    .code-input {
        width: 45px !important;
        height: 45px !important;
        font-size: 18px !important;
    }
    
    /* Profil Sayfası */
    .profil-card {
        margin: 80px 15px 20px !important;
        padding: 25px !important;
        max-width: 100% !important;
    }
    
    .profil-header {
        flex-direction: column !important;
        text-align: center !important;
        gap: 15px !important;
    }
    
    .profil-avatar {
        width: 70px !important;
        height: 70px !important;
        font-size: 28px !important;
    }
    
    .password-section {
        padding: 20px !important;
    }
}

/* ========== FOOTER ========== */
@media (max-width: 1024px) {
    footer {
        padding: 30px 15px !important;
    }
    
    footer p {
        font-size: 13px !important;
    }
    
    .social-links {
        gap: 15px !important;
    }
    
    .social-links a {
        width: 40px !important;
        height: 40px !important;
    }
}

/* ========== TABLET DÜZENLEMELERİ (769px - 1024px) ========== */
@media (min-width: 769px) and (max-width: 1024px) {
    .hero h1 { font-size: 2.8rem !important; }
    .hero-container { gap: 40px !important; }
    .cards-grid { grid-template-columns: repeat(2, 1fr) !important; }
}

/* ========== YATAY MOD (Landscape) ========== */
@media (max-height: 500px) and (orientation: landscape) {
    .hero { min-height: auto !important; padding: 30px 15px !important; }
    .hero-visual { display: none !important; }
    .nav-links { padding-top: 60px !important; }
}

/* =========================================
   MOBİL MENÜ JAVASCRIPT DESTEĞİ
   Bu kodları mobile.css SONUNA ekleyin
========================================= */

/* Menü açıkken scroll (style.css ile uyumlu; position:fixed sayfa sıçratmasın) */
body.menu-open {
    overflow: hidden !important;
}

/* ========== ANA SAYFA (index) — yatay taşma ve mobil düzen ========== */
@media (max-width: 1024px) {
    html,
    body.home {
        overflow-x: hidden;
        max-width: 100vw;
    }

    body.home .hero {
        padding: 72px 0 48px !important;
        min-height: auto !important;
        margin-top: 60px !important;
        box-sizing: border-box;
    }

    body.home .hero .container,
    body.home .hero-container {
        width: 100% !important;
        max-width: 100% !important;
        padding: 16px !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
        grid-template-columns: 1fr !important;
    }

    body.home .hero-visual {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        visibility: hidden !important;
        position: absolute !important;
        left: -9999px !important;
        pointer-events: none !important;
    }

    body.home .floating-card,
    body.home .main-icon,
    body.home .main-circle {
        display: none !important;
    }

    body.home .hero-content {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    body.home .hero-content p {
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        word-wrap: break-word;
        overflow-wrap: break-word;
    }

    body.home .hero-content .badge {
        white-space: normal !important;
        line-height: 1.45 !important;
        max-width: 100% !important;
        text-align: center;
    }

    body.home .hero-stats {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 12px 28px !important;
        width: 100% !important;
    }

    body.home .logo-slider {
        padding: 40px 0 !important;
        overflow: hidden;
    }

    body.home .logo-slider .container {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    body.home .logo-slider h3 {
        font-size: 1.15rem !important;
        padding: 0 8px;
    }

    body.home .logo-grid {
        padding: 1.25rem !important;
        gap: 1rem !important;
        justify-content: center !important;
    }

    body.home .logo-item {
        width: 28% !important;
        min-width: 72px !important;
        max-width: 100px !important;
    }

    body.home .logo-item img {
        max-width: 100%;
        height: auto;
        object-fit: contain;
    }

    body.home .ai-section {
        padding: 56px 0 !important;
        overflow: hidden;
    }

    body.home .ai-container {
        grid-template-columns: 1fr !important;
        gap: 1.5rem !important;
        text-align: center;
        padding: 0 16px;
        box-sizing: border-box;
    }

    body.home .ai-visual {
        display: none !important;
    }

    body.home .ai-content h2 {
        font-size: 1.65rem !important;
        line-height: 1.25 !important;
    }

    body.home .ai-content p,
    body.home .ai-content ul {
        font-size: 0.95rem !important;
    }

    body.home .why-us,
    body.home .process,
    body.home .quick-access {
        padding-left: 0 !important;
        padding-right: 0 !important;
        overflow: hidden;
    }

    body.home .why-us .container,
    body.home .process .container,
    body.home .quick-access .container {
        padding-left: 16px !important;
        padding-right: 16px !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }

    body.home .why-grid,
    body.home .process-grid {
        gap: 1.5rem !important;
    }

    body.home .final-cta {
        padding: 56px 16px !important;
    }

    body.home .cta-content h2 {
        font-size: 1.75rem !important;
        line-height: 1.2 !important;
    }

    body.home .cta-content p {
        font-size: 1rem !important;
        padding: 0 8px;
    }

    body.home .section-title {
        font-size: 1.45rem !important;
        padding: 0 12px;
    }

    body.home .legal-links {
        flex-direction: column !important;
        align-items: center !important;
        gap: 10px !important;
    }

    body.home .legal-links a {
        display: block;
        text-align: center;
    }

    body.home .corp-legal-line {
        padding: 0 12px !important;
        word-break: break-word;
    }

    body.home .footer-top {
        padding: 0 16px;
    }
}

@media (max-width: 480px) {
    body.home .hero h1 {
        font-size: 1.4rem !important;
    }

    body.home .hero-buttons .btn {
        max-width: 100% !important;
        width: 100% !important;
    }
}