/* =============================================== */
/*    CSS ESPECÍFICO PARA TABLETS/iPADS          */
/*    Aplicado apenas em dispositivos com        */
/*    largura entre 768px-1024px                 */
/* =============================================== */

/* ===== ESTILOS PARA DROPDOWN DE NAVEGAÇÃO ===== */

/* Estilos gerais para dropdown (desktop e tablet) */
.nav-item.dropdown {
    position: relative;
}

.nav-link.dropdown-toggle {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.nav-link.dropdown-toggle::after {
    border: none;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f107"; /* fa-angle-down */
    margin-left: 0.25rem;
    transition: transform 0.3s ease;
}

.nav-link.dropdown-toggle[aria-expanded="true"]::after {
    transform: rotate(180deg);
}

.dropdown-menu {
    background: rgba(255, 255, 255, 0.95);
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 0.5rem;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    min-width: 200px;
    padding: 0.5rem 0;
    margin-top: 0.25rem;
}

[data-theme="dark"] .dropdown-menu {
    background: var(--navbar-bg-dark, #1a1a1a);
    border-color: rgba(255, 255, 255, 0.05);
}

.dropdown-item {
    color: #333333;
    padding: 0.5rem 1rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9rem;
    text-decoration: none;
    transition: background-color 0.3s ease;
}

[data-theme="dark"] .dropdown-item {
    color: var(--navbar-text-dark, #e0e0e0);
}

.dropdown-item:hover,
.dropdown-item:focus {
    background-color: rgba(102, 126, 234, 0.1);
    color: #333333;
}

[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .dropdown-item:focus {
    background-color: rgba(255, 255, 255, 0.05);
    color: var(--navbar-text-dark, #e0e0e0);
}

.dropdown-divider {
    border-color: rgba(255, 255, 255, 0.1);
    margin: 0.25rem 0;
}

[data-theme="dark"] .dropdown-divider {
    border-color: rgba(255, 255, 255, 0.05);
}

/* Detecção específica de tablets */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    
    /* Variável para identificar ambiente tablet */
    :root {
        --is-tablet: 1;
    }

    /* ===== NAVEGAÇÃO RESPONSIVA PARA TABLETS ===== */
    
    /* Dropdown ajustes para tablets */
    .dropdown-menu {
        font-size: 0.85rem !important;
        min-width: 180px !important;
    }

    .dropdown-item {
        padding: 0.6rem 0.8rem !important;
        min-height: 40px !important;
    }

    .dropdown-item i {
        font-size: 0.8rem !important;
        width: 16px !important;
        text-align: center !important;
    }

    /* Tablet Portrait: Menu colapsado */
    @media (orientation: portrait) {
        .nav-toggle {
            display: flex !important;
        }

        .nav-menu {
            flex-wrap: wrap !important;
            justify-content: center !important;
        }

        .nav-link {
            font-size: 0.9rem !important;
            padding: 0.5rem 0.75rem !important;
        }

        /* Dropdown em portrait - full width */
        .nav-item.dropdown {
            width: 100%;
        }

        .dropdown-menu {
            position: static !important;
            width: 100% !important;
            box-shadow: none !important;
            border: none !important;
            background: rgba(255, 255, 255, 0.1) !important;
            border-radius: 0 !important;
            margin: 0 !important;
            padding: 0 !important;
        }

        .dropdown-item {
            border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
            padding: 1rem !important;
            text-align: center !important;
            justify-content: center !important;
        }

        .dropdown-divider {
            display: none !important;
        }
    }

    /* Tablet Landscape: Menu horizontal compacto */
    @media (orientation: landscape) {
        .nav-menu {
            gap: 0.5rem !important;
            flex-wrap: wrap !important;
            justify-content: center !important;
        }

        .nav-link {
            font-size: 0.85rem !important;
            padding: 0.4rem 0.6rem !important;
        }

        .nav-brand {
            font-size: 1.1rem !important;
        }

        /* Dropdown compacto em landscape */
        .dropdown-menu {
            font-size: 0.8rem !important;
            min-width: 160px !important;
        }

        .dropdown-item {
            padding: 0.4rem 0.6rem !important;
            min-height: 36px !important;
        }
    }

    /* ===== TABELAS RESPONSIVAS PARA TABLETS ===== */
    
    /* Scroll horizontal suave */
    .table-responsive {
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        scrollbar-color: rgba(155, 155, 155, 0.5) transparent;
    }

    .table-responsive::-webkit-scrollbar {
        height: 6px;
    }

    .table-responsive::-webkit-scrollbar-track {
        background: rgba(155, 155, 155, 0.1);
        border-radius: 3px;
    }

    .table-responsive::-webkit-scrollbar-thumb {
        background: rgba(155, 155, 155, 0.5);
        border-radius: 3px;
    }

    /* Compactar tabelas em tablets */
    .table th,
    .table td {
        padding: 0.6rem 0.4rem !important;
        font-size: 0.9rem !important;
    }

    /* Ocultar colunas menos importantes em portrait */
    @media (orientation: portrait) {
        .table th:nth-child(n+5),
        .table td:nth-child(n+5) {
            display: none !important;
        }
    }

    /* Ocultar apenas últimas colunas em landscape */
    @media (orientation: landscape) {
        .table th:nth-child(n+6),
        .table td:nth-child(n+6) {
            display: none !important;
        }
    }

    /* ===== DASHBOARD RESPONSIVO PARA TABLETS ===== */
    
    /* Cards de estatísticas em grid 2x2 */
    @media (orientation: portrait) {
        .row [class*="col-md-3"], 
        .row [class*="col-lg-3"] {
            flex: 0 0 50% !important;
            max-width: 50% !important;
        }
    }

    /* Cards de estatísticas em linha em landscape */
    @media (orientation: landscape) {
        .row [class*="col-md-3"],
        .row [class*="col-lg-3"] {
            flex: 0 0 25% !important;
            max-width: 25% !important;
        }
    }

    /* ===== FORMULÁRIOS OTIMIZADOS PARA TABLETS ===== */
    
    /* Prevenir zoom no iOS */
    input[type="text"],
    input[type="email"],
    input[type="password"],
    input[type="number"],
    input[type="tel"],
    input[type="url"],
    input[type="search"],
    input[type="date"],
    input[type="datetime-local"],
    input[type="time"],
    textarea,
    select {
        font-size: 16px !important;
    }

    /* Área de toque otimizada */
    .btn,
    .form-control,
    .form-select {
        min-height: 44px !important;
    }

    .btn-sm {
        min-height: 36px !important;
    }

    /* ===== MODAIS RESPONSIVOS PARA TABLETS ===== */
    
    .modal-dialog {
        max-width: 90% !important;
        margin: 1rem auto !important;
    }

    .modal-dialog-lg {
        max-width: 95% !important;
    }

    /* ===== BOTÕES DE AÇÃO COMPACTOS ===== */
    
    .btn-group .btn {
        padding: 0.375rem 0.5rem !important;
        font-size: 0.8rem !important;
    }

    /* Texto dos botões mais compacto em tablets pequenos */
    @media (max-width: 834px) {
        .btn .d-none.d-md-inline {
            display: none !important;
        }
        
        .btn .d-md-none {
            display: inline !important;
        }
    }

    /* ===== OTIMIZAÇÕES ESPECÍFICAS DO iPAD ===== */
    @media (-webkit-min-device-pixel-ratio: 2) {
        /* iPad com tela Retina */
        html {
            font-size: 15px !important;
        }

        .navbar {
            padding: 0.6rem 0 !important;
        }

        .nav-container {
            min-height: 52px !important;
        }
    }

    /* ===== AJUSTES PARA CONTAINERS ===== */
    
    .container-fluid {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    .card {
        margin-bottom: 1rem !important;
    }

    .card-body {
        padding: 1.25rem !important;
    }

    /* ===== AJUSTES PARA ALERTAS E BADGES ===== */
    
    .alert {
        border-radius: 0.5rem !important;
        padding: 1rem 1.25rem !important;
    }

    .badge {
        font-size: 0.75rem !important;
        padding: 0.25rem 0.4rem !important;
    }

    /* ===== MELHORIAS DE PERFORMANCE ===== */
    
    /* Acelerar transições em tablets */
    * {
        transition-duration: 0.2s !important;
    }

    /* Scroll suave */
    html {
        scroll-behavior: smooth;
    }

    /* ===== AJUSTES PARA DROPDOWN E NAVEGAÇÃO ===== */
    
    .dropdown-menu {
        font-size: 0.9rem !important;
    }

    .dropdown-item {
        padding: 0.6rem 1rem !important;
        min-height: 40px !important;
    }

    /* Breadcrumbs mais compactos */
    .breadcrumb {
        padding: 0.5rem 0 !important;
        font-size: 0.85rem !important;
    }

    /* ===== ESTADO HOVER OTIMIZADO PARA TOUCH ===== */
    
    @media (hover: none) {
        /* Dispositivos touch - remover efeitos hover desnecessários */
        .btn:hover,
        .nav-link:hover,
        .card:hover {
            transform: none !important;
        }
    }
}