/* Estilos específicos para mobile */

/* Ajustes para telas muito pequenas */
@media (max-width: 360px) {
    .mobile-nav {
        padding: 5px 0;
    }
    
    .nav-item {
        padding: 6px 8px;
        min-width: 50px;
    }
    
    .nav-item i {
        font-size: 1.1rem;
    }
    
    .nav-item span {
        font-size: 0.65rem;
    }
}

/* Ajustes para iPhone SE e similares */
@media (max-width: 375px) {
    .auth-header h1 {
        font-size: 1.8rem;
    }
    
    .form-group input {
        padding: 10px 14px;
    }
}

/* Landscape mode */
@media (orientation: landscape) and (max-height: 500px) {
    .mobile-header {
        padding: 10px 20px;
    }
    
    .header-content h1 {
        font-size: 1.2rem;
    }
    
    .main-content.with-nav {
        padding-top: 70px;
        padding-bottom: 70px;
    }
    
    .mobile-nav {
        padding: 5px 0;
    }
    
    .nav-item {
        padding: 5px 8px;
    }
    
    .nav-item i {
        font-size: 1rem;
        margin-bottom: 2px;
    }
    
    .nav-item span {
        font-size: 0.7rem;
    }
}

/* Ajustes para telas maiores em mobile */
@media (min-width: 480px) and (max-width: 768px) {
    .auth-container {
        padding: 60px 40px;
    }
    
    .auth-form {
        padding: 40px;
    }
    
    .raffles-grid {
        grid-template-columns: 1fr 1fr;
        gap: 15px;
    }
}

/* Dark mode support - REMOVIDO PARA EVITAR CONFLITOS
   O contrast-fix.css agora controla todas as cores */

/* Melhorias de acessibilidade */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* High contrast mode */
@media (prefers-contrast: high) {
    .btn-primary {
        border: 2px solid #000;
    }
    
    .btn-secondary {
        border: 2px solid #000;
    }
    
    .form-group input {
        border: 2px solid #000;
    }
}

/* Touch-friendly improvements */
@media (hover: none) and (pointer: coarse) {
    .nav-item, .btn-primary, .btn-secondary, .toggle-password {
        min-height: 44px;
        min-width: 44px;
    }
    
    .form-group input {
        min-height: 44px;
    }
}

/* Safe area adjustments for devices with notch */
.mobile-header {
    padding-top: max(15px, env(safe-area-inset-top));
    padding-left: max(20px, env(safe-area-inset-left));
    padding-right: max(20px, env(safe-area-inset-right));
}

.mobile-nav {
    padding-bottom: max(8px, env(safe-area-inset-bottom));
    padding-left: max(0px, env(safe-area-inset-left));
    padding-right: max(0px, env(safe-area-inset-right));
}

.main-content {
    padding-left: max(20px, env(safe-area-inset-left));
    padding-right: max(20px, env(safe-area-inset-right));
}

/* PWA improvements */
@media (display-mode: standalone) {
    .mobile-header {
        padding-top: max(25px, env(safe-area-inset-top) + 10px);
    }
}

/* Scroll improvements */
.main-content {
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
}

/* Input zoom prevention on iOS */
@media screen and (max-width: 767px) {
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    input[type="password"] {
        font-size: 16px !important;
    }
}
