/**
 * Netgsm Başvuru Sistemi - Mobil Özel Stiller
 * MOBILE-FIRST - Touch optimizations
 */

/* ============================================
   MOBILE SPECIFIC ADJUSTMENTS
   ============================================ */

@media (max-width: 767px) {
    /* Body adjustments */
    body {
        font-size: 16px; /* iOS zoom engellemek için */
        -webkit-text-size-adjust: 100%;
    }

    /* Container padding */
    .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    /* Stepper mobilde daha kompakt */
    .stepper-container {
        padding: 1rem;
        margin: 1rem 0;
    }

    .stepper-steps {
        gap: 0.25rem;
        padding-bottom: 0.5rem;
    }

    .stepper-step {
        min-width: 50px;
    }

    .stepper-step-icon {
        width: 36px;
        height: 36px;
        font-size: 1rem;
    }

    .stepper-step-label {
        font-size: 0.65rem;
        line-height: 1.2;
    }

    /* Step header mobilde daha kompakt */
    .step-header {
        padding: 1.5rem 0.5rem 1rem;
    }

    .step-icon {
        font-size: 2.5rem;
    }

    .step-title {
        font-size: 1.5rem;
    }

    .step-description {
        font-size: 0.9rem;
    }

    /* Card body padding */
    .step-card .card-body {
        padding: 1rem;
    }

    /* Upload zone mobilde daha küçük */
    .upload-zone {
        padding: 2rem 1rem;
    }

    .upload-icon {
        font-size: 3rem;
    }

    .upload-zone h3 {
        font-size: 1.1rem;
    }

    .upload-zone p {
        font-size: 0.9rem;
    }

    /* File preview mobilde optimize */
    .file-preview {
        padding: 1rem;
    }

    .file-preview-image {
        max-height: 200px;
    }

    /* Button adjustments */
    .step-actions .btn {
        padding: 1rem;
        font-size: 1rem;
        min-height: 50px; /* Touch friendly */
    }

    /* E-devlet form mobilde */
    .edevlet-container {
        padding: 0;
    }

    .edevlet-logo {
        max-width: 150px;
    }

    .edevlet-header h3 {
        font-size: 1.1rem;
    }

    .edevlet-form .form-control-lg {
        font-size: 16px; /* iOS zoom engellemek için */
    }

    /* Error screen mobilde */
    .edevlet-error-container {
        padding: 1.5rem 0.5rem;
    }

    .error-icon {
        font-size: 4rem;
    }

    .error-title {
        font-size: 1.5rem;
    }

    .error-message {
        font-size: 0.95rem;
    }

    .info-box {
        padding: 1rem;
    }

    .info-box h4 {
        font-size: 1.1rem;
    }

    .contact-info p {
        font-size: 0.9rem;
    }

    /* Alert messages mobilde */
    .alert {
        font-size: 0.9rem;
        padding: 0.75rem 1rem;
    }

    /* Application number badge */
    .application-number-badge {
        font-size: 0.75rem;
        padding: 0.4rem 0.8rem;
    }

    /* Help section */
    .help-section .card {
        margin-top: 1rem;
    }

    .help-section .card-body {
        padding: 1rem;
    }

    .help-section h5 {
        font-size: 0.95rem;
    }

    .help-section p {
        font-size: 0.85rem;
    }

    /* Footer mobilde */
    .app-footer {
        padding: 1.5rem 0;
        margin-top: 2rem;
    }

    .app-footer p {
        font-size: 0.85rem;
    }

    /* Loading overlay */
    .loading-overlay .spinner-border {
        width: 2.5rem;
        height: 2.5rem;
    }

    .loading-overlay p {
        font-size: 0.9rem;
    }
}

/* ============================================
   TOUCH OPTIMIZATIONS
   ============================================ */

/* Touch-friendly button sizes */
.btn {
    min-height: 44px;
    min-width: 44px;
    padding: 0.75rem 1.5rem;
}

/* Remove tap highlight color */
* {
    -webkit-tap-highlight-color: transparent;
}

/* Smooth scrolling for touch */
body {
    -webkit-overflow-scrolling: touch;
}

/* Touch feedback */
.action-card:active,
.btn:active,
.upload-zone:active {
    transform: scale(0.98);
    transition: transform 0.1s ease;
}

/* ============================================
   LANDSCAPE MODE (Mobile)
   ============================================ */

@media (max-width: 767px) and (orientation: landscape) {
    .step-header {
        padding: 1rem 0.5rem;
    }

    .step-icon {
        font-size: 2rem;
    }

    .upload-zone {
        padding: 1.5rem 1rem;
    }

    .upload-icon {
        font-size: 2.5rem;
    }

    .stepper-container {
        margin: 0.5rem 0;
    }
}

/* ============================================
   VERY SMALL SCREENS (< 360px)
   ============================================ */

@media (max-width: 359px) {
    .stepper-step-icon {
        width: 32px;
        height: 32px;
        font-size: 0.9rem;
    }

    .stepper-step-label {
        font-size: 0.6rem;
    }

    .step-title {
        font-size: 1.25rem;
    }

    .btn {
        font-size: 0.9rem;
        padding: 0.75rem 1rem;
    }
}

/* ============================================
   ACCESSIBILITY - TOUCH TARGETS
   ============================================ */

/* Minimum 44x44px touch target size */
button,
a,
input[type="file"],
input[type="submit"],
input[type="button"],
.btn,
.action-card {
    min-height: 44px;
    min-width: 44px;
}

/* Form inputs touch friendly */
input[type="text"],
input[type="number"],
input[type="password"],
input[type="email"],
input[type="tel"],
select,
textarea {
    min-height: 44px;
    font-size: 16px; /* iOS zoom engellemek için */
}

/* ============================================
   PERFORMANCE OPTIMIZATIONS
   ============================================ */

/* GPU acceleration */
.stepper-progress-bar,
.upload-zone,
.btn,
.action-card,
.stepper-step-icon {
    transform: translateZ(0);
    will-change: transform;
}

/* Smooth animations on mobile */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
