/* 
 * Nexus Statistic - Otimizações Específicas para Notebooks
 * Melhorias para resoluções de notebook (1024px - 1366px)
 */

/* ===== OTIMIZAÇÕES GERAIS PARA NOTEBOOKS ===== */

/* Notebook - Tela média (1024px - 1366px) */
@media (min-width: 1024px) and (max-width: 1366px) {
    
    /* ===== LAYOUT E CONTAINERS ===== */
    
    /* Container mais compacto */
    .container-fluid {
        max-width: 1200px;
        padding-left: 1rem;
        padding-right: 1rem;
    }
    
    /* Grid mais denso */
    .row {
        margin-left: -0.5rem;
        margin-right: -0.5rem;
    }
    
    .col, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12 {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }
    
    /* ===== TIPOGRAFIA OTIMIZADA ===== */
    
    /* Fonte base menor */
    body {
        font-size: 13px;
        line-height: 1.5;
    }
    
    /* Títulos compactos */
    h1 {
        font-size: 1.4rem;
        margin-bottom: 0.8rem;
    }
    
    h2 {
        font-size: 1.2rem;
        margin-bottom: 0.7rem;
    }
    
    h3 {
        font-size: 1rem;
        margin-bottom: 0.6rem;
    }
    
    h4 {
        font-size: 0.95rem;
        margin-bottom: 0.5rem;
    }
    
    h5 {
        font-size: 0.9rem;
        margin-bottom: 0.4rem;
    }
    
    h6 {
        font-size: 0.85rem;
        margin-bottom: 0.3rem;
    }
    
    /* ===== NAVBAR COMPACTA ===== */
    
    .navbar {
        padding: 0.4rem 1rem;
        min-height: 50px;
    }
    
    .navbar-brand {
        font-size: 1rem;
    }
    
    .navbar-brand img {
        height: 32px;
        margin-right: 8px;
    }
    
    .navbar-dark .navbar-nav .nav-link {
        padding: 0.3rem 0.6rem;
        font-size: 0.75rem;
        margin: 0 0.1rem;
    }
    
    .navbar-toggler {
        padding: 0.25rem 0.5rem;
        font-size: 0.8rem;
    }
    
    /* ===== CARDS OTIMIZADOS ===== */
    
    .card {
        margin-bottom: 0.8rem;
        border-radius: 4px;
    }
    
    .card-header {
        padding: 0.6rem 0.8rem;
        font-size: 0.85rem;
        font-weight: 600;
    }
    
    .card-body {
        padding: 0.8rem;
    }
    
    .card-footer {
        padding: 0.6rem 0.8rem;
    }
    
    /* ===== BOTÕES COMPACTOS ===== */
    
    .btn {
        padding: 0.4rem 0.8rem;
        font-size: 0.75rem;
        border-radius: 4px;
    }
    
    .btn-sm {
        padding: 0.25rem 0.5rem;
        font-size: 0.7rem;
    }
    
    .btn-lg {
        padding: 0.5rem 1rem;
        font-size: 0.8rem;
    }
    
    /* ===== FORMULÁRIOS COMPACTOS ===== */
    
    .form-control {
        padding: 0.4rem 0.6rem;
        font-size: 0.85rem;
        border-radius: 4px;
    }
    
    .form-select {
        padding: 0.4rem 0.6rem;
        font-size: 0.85rem;
    }
    
    .form-label {
        font-size: 0.8rem;
        margin-bottom: 0.3rem;
        font-weight: 600;
    }
    
    .form-text {
        font-size: 0.7rem;
        margin-top: 0.2rem;
    }
    
    .form-group {
        margin-bottom: 0.8rem;
    }
    
    .input-group-text {
        font-size: 0.75rem;
        padding: 0.4rem 0.6rem;
    }
    
    /* ===== TABELAS COMPACTAS ===== */
    
    .table {
        font-size: 0.8rem;
    }
    
    .table thead th {
        padding: 0.5rem 0.4rem;
        font-size: 0.75rem;
        font-weight: 600;
        vertical-align: middle;
    }
    
    .table tbody td {
        padding: 0.5rem 0.4rem;
        font-size: 0.8rem;
        vertical-align: middle;
    }
    
    .table-responsive {
        border-radius: 4px;
    }
    
    /* ===== HEADERS DE SEÇÃO ===== */
    
    .header-buttons {
        gap: 0.4rem;
        margin-bottom: 0.8rem;
    }
    
    .header-buttons .btn {
        font-size: 0.75rem;
        padding: 0.4rem 0.7rem;
    }
    
    /* ===== BOTÕES DE AÇÃO ===== */
    
    .action-buttons {
        gap: 0.15rem;
    }
    
    .action-buttons .btn {
        font-size: 0.7rem;
        padding: 0.25rem 0.4rem;
        min-width: 28px;
    }
    
    .action-buttons .btn .fas {
        font-size: 0.75rem;
    }
    
    /* ===== BADGES E STATUS ===== */
    
    .badge {
        font-size: 0.65rem;
        padding: 0.15em 0.3em;
        border-radius: 3px;
    }
    
    /* ===== PAGINAÇÃO COMPACTA ===== */
    
    .pagination {
        margin-bottom: 0.8rem;
    }
    
    .pagination .page-link {
        padding: 0.3rem 0.5rem;
        font-size: 0.75rem;
    }
    
    .pagination .page-item {
        margin: 0 0.1rem;
    }
    
    /* ===== BREADCRUMBS COMPACTOS ===== */
    
    .breadcrumb {
        padding: 0.4rem 0;
        margin-bottom: 0.8rem;
        font-size: 0.75rem;
    }
    
    .breadcrumb-item + .breadcrumb-item::before {
        font-size: 0.6rem;
    }
    
    /* ===== ALERTAS COMPACTOS ===== */
    
    .alert {
        padding: 0.6rem 0.8rem;
        font-size: 0.85rem;
        margin-bottom: 0.8rem;
        border-radius: 4px;
    }
    
    .alert-dismissible .btn-close {
        padding: 0.6rem 0.8rem;
    }
    
    /* ===== DROPDOWNS COMPACTOS ===== */
    
    .dropdown-menu {
        font-size: 0.8rem;
        border-radius: 4px;
        padding: 0.3rem 0;
    }
    
    .dropdown-item {
        padding: 0.3rem 0.8rem;
        font-size: 0.8rem;
    }
    
    /* ===== MODAIS COMPACTOS ===== */
    
    .modal-header {
        padding: 0.8rem 1rem;
    }
    
    .modal-body {
        padding: 0.8rem 1rem;
    }
    
    .modal-footer {
        padding: 0.6rem 1rem;
    }
    
    .modal-title {
        font-size: 1rem;
    }
    
    /* ===== ESPAÇAMENTOS REDUZIDOS ===== */
    
    .mb-4 {
        margin-bottom: 0.8rem !important;
    }
    
    .mb-3 {
        margin-bottom: 0.6rem !important;
    }
    
    .mb-2 {
        margin-bottom: 0.4rem !important;
    }
    
    .py-4 {
        padding-top: 1.2rem !important;
        padding-bottom: 1.2rem !important;
    }
    
    .py-3 {
        padding-top: 0.8rem !important;
        padding-bottom: 0.8rem !important;
    }
    
    .py-2 {
        padding-top: 0.6rem !important;
        padding-bottom: 0.6rem !important;
    }
    
    .px-4 {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
    
    .px-3 {
        padding-left: 0.8rem !important;
        padding-right: 0.8rem !important;
    }
    
    /* ===== FOOTER COMPACTO ===== */
    
    .footer {
        padding: 1.2rem 0;
        margin-top: 1.2rem;
    }
    
    .footer h5 {
        font-size: 0.85rem;
        margin-bottom: 0.8rem;
    }
    
    .footer p, .footer a {
        font-size: 0.75rem;
    }
    
    /* ===== MELHORIAS ESPECÍFICAS PARA LISTAS ===== */
    
    /* Lista de apreensões */
    .apreensao-item {
        padding: 0.8rem;
        margin-bottom: 0.8rem;
    }
    
    /* Cards de pessoa presa */
    .pessoa-presa-card {
        margin-bottom: 0.8rem;
    }
    
    .pessoa-presa-card .card-body {
        padding: 0.8rem;
    }
    
    /* ===== MELHORIAS PARA FORMULÁRIOS ===== */
    
    /* Seções de formulário */
    .form-section {
        margin-bottom: 1rem;
    }
    
    .form-section h6 {
        font-size: 0.9rem;
        margin-bottom: 0.5rem;
        padding-bottom: 0.3rem;
    }
    
    /* Campos obrigatórios - REMOVIDO para evitar duplicação com form_styles.css */
    
    /* ===== MELHORIAS PARA DASHBOARD ===== */
    
    /* Cards de estatísticas */
    .stats-card {
        padding: 0.8rem;
        margin-bottom: 0.8rem;
    }
    
    .stats-card .card-title {
        font-size: 0.9rem;
        margin-bottom: 0.5rem;
    }
    
    .stats-card .card-text {
        font-size: 1.2rem;
        font-weight: 600;
    }
    
    /* ===== MELHORIAS PARA RELATÓRIOS ===== */
    
    /* Filtros de relatório */
    .filtros-relatorio {
        padding: 0.8rem;
        margin-bottom: 0.8rem;
    }
    
    .filtros-relatorio .form-group {
        margin-bottom: 0.6rem;
    }
    
    /* ===== MELHORIAS PARA NAVEGAÇÃO ===== */
    
    /* Menu lateral (se existir) */
    .sidebar {
        font-size: 0.8rem;
    }
    
    .sidebar .nav-link {
        padding: 0.4rem 0.8rem;
        font-size: 0.8rem;
    }
    
    /* ===== MELHORIAS PARA ESTADOS VAZIOS ===== */
    
    .empty-state {
        padding: 2rem 1rem;
        text-align: center;
    }
    
    .empty-state .fa-3x {
        font-size: 2.5rem !important;
        margin-bottom: 1rem;
    }
    
    .empty-state h5 {
        font-size: 1rem;
        margin-bottom: 0.5rem;
    }
    
    .empty-state p {
        font-size: 0.85rem;
        color: #6c757d;
    }
    
    /* ===== MELHORIAS PARA TOOLTIPS ===== */
    
    .tooltip {
        font-size: 0.75rem;
    }
    
    .tooltip-inner {
        padding: 0.4rem 0.6rem;
        border-radius: 4px;
    }
    
    /* ===== MELHORIAS PARA SCROLL ===== */
    
    /* Scrollbar mais fina */
    ::-webkit-scrollbar {
        width: 6px;
        height: 6px;
    }
    
    ::-webkit-scrollbar-track {
        background: #f1f1f1;
        border-radius: 3px;
    }
    
    ::-webkit-scrollbar-thumb {
        background: #c1c1c1;
        border-radius: 3px;
    }
    
    ::-webkit-scrollbar-thumb:hover {
        background: #a8a8a8;
    }
    
    /* ===== MELHORIAS PARA PERFORMANCE ===== */
    
    /* Reduzir animações para melhor performance */
    .btn, .card, .form-control {
        transition: all 0.2s ease;
    }
    
    /* ===== MELHORIAS PARA ACESSIBILIDADE ===== */
    
    /* Foco mais visível */
    .btn:focus,
    .form-control:focus,
    .form-select:focus {
        box-shadow: 0 0 0 0.15rem rgba(0, 123, 255, 0.25);
    }
    
    /* ===== MELHORIAS PARA IMPRESSÃO ===== */
    
    @media print {
        .btn,
        .action-buttons,
        .header-buttons {
            display: none !important;
        }
        
        .card {
            border: 1px solid #000 !important;
            box-shadow: none !important;
        }
        
        .table {
            font-size: 0.7rem !important;
        }
    }
}

/* ===== MELHORIAS PARA NOTEBOOKS COM TELA MAIOR (1367px - 1440px) ===== */

@media (min-width: 1367px) and (max-width: 1440px) {
    /* Versão ligeiramente menos compacta */
    body {
        font-size: 13.5px;
    }
    
    .container-fluid {
        max-width: 1300px;
    }
    
    .btn {
        padding: 0.45rem 0.85rem;
        font-size: 0.78rem;
    }
    
    .card-body {
        padding: 0.9rem;
    }
    
    .table thead th {
        padding: 0.55rem 0.45rem;
    }
    
    .table tbody td {
        padding: 0.55rem 0.45rem;
    }
}

/* ===== MELHORIAS PARA NOTEBOOKS COM TELA MENOR (1024px - 1200px) ===== */

@media (min-width: 1024px) and (max-width: 1200px) {
    /* Versão ainda mais compacta */
    body {
        font-size: 12.5px;
    }
    
    .container-fluid {
        max-width: 1100px;
        padding-left: 0.8rem;
        padding-right: 0.8rem;
    }
    
    .btn {
        padding: 0.35rem 0.7rem;
        font-size: 0.72rem;
    }
    
    .card-body {
        padding: 0.7rem;
    }
    
    .table thead th {
        padding: 0.45rem 0.35rem;
        font-size: 0.7rem;
    }
    
    .table tbody td {
        padding: 0.45rem 0.35rem;
        font-size: 0.75rem;
    }
    
    /* Ocultar algumas colunas menos importantes */
    .table th:nth-child(4),
    .table td:nth-child(4),
    .table th:nth-child(6),
    .table td:nth-child(6) {
        display: none;
    }
}