        /* ===== RESET E BASE ===== */
        * { box-sizing: border-box; margin: 0; padding: 0; }
        [hidden] { display: none !important; }
        body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background: #f5f7fa; padding: 20px; }
        .container { max-width: 1400px; margin: 0 auto; }

        /* ===== TELA DE LOGIN ===== */
        #login-screen {
            position: fixed;
            inset: 0;
            width: 100%;
            height: 100dvh;
            min-height: 100vh;
            display: grid;
            place-items: center;
            background: #071828;
            padding: 0;
            overflow: hidden;
            z-index: 9999;
            transition: opacity 0.6s ease;
        }
        #login-screen.hidden { opacity: 0; pointer-events: none; }
        .login-visual {
            position: absolute;
            inset: 0;
            background: #071828;
            overflow: hidden;
        }
        .login-visual::after {
            content: "";
            position: absolute;
            inset: 0;
            background:
                radial-gradient(circle at center, rgba(4, 26, 43, 0.18) 0%, rgba(4, 26, 43, 0.48) 100%),
                rgba(3, 22, 37, 0.22);
        }
        .login-visual img {
            display: block;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
        }
        .login-card {
            position: relative;
            z-index: 1;
            width: min(440px, calc(100% - 40px));
            max-height: calc(100dvh - 40px);
            text-align: center;
            border: 1px solid rgba(255,255,255,0.24);
            border-radius: 22px;
            background: rgba(5, 47, 79, 0.88);
            box-shadow: 0 24px 70px rgba(0,0,0,0.42);
            backdrop-filter: blur(14px);
            -webkit-backdrop-filter: blur(14px);
            overflow: auto;
        }
        .login-form {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            padding: clamp(34px, 5vw, 52px);
            background: transparent;
            color: white;
        }
        .login-form > * { width: 100%; }
        .login-card .logo-login { font-size: 2.2rem; font-weight: 800; color: white; letter-spacing: -1px; margin-bottom: 5px; }
        .login-card .logo-login span { color: #79d6ff; }
        .login-card .slogan-login { color: #dbeeff; font-size: 0.9rem; letter-spacing: 2px; margin-bottom: 30px; font-weight: 300; }
        .login-card .slogan-login strong { color: white; font-weight: 600; }
        .login-card .form-group-login { margin-bottom: 20px; text-align: left; }
        .login-card .form-group-login label { display: block; font-size: 0.85rem; font-weight: 600; color: white; margin-bottom: 6px; }
        .login-card .form-group-login input { width: 100%; padding: 13px 15px; border: 2px solid rgba(255,255,255,0.35); border-radius: 8px; font-size: 1rem; transition: border-color 0.3s, box-shadow 0.3s; background: rgba(255,255,255,0.96); color: #243648; }
        .login-card .form-group-login input:focus { border-color: #79d6ff; outline: none; background: white; box-shadow: 0 0 0 3px rgba(121,214,255,0.2); }
        .login-card .btn-login { width: 100%; padding: 14px; background: #ffc62f; color: #17324a; border: none; border-radius: 8px; font-size: 1.1rem; font-weight: 700; cursor: pointer; transition: background 0.3s, transform 0.2s; margin-top: 10px; }
        .login-card .btn-login:hover { background: #ffd45c; transform: translateY(-1px); }
        .login-error { color: #ffd7d3; font-size: 0.9rem; margin-top: 15px; min-height: 24px; font-weight: 600; }
        .login-restricted { margin-top: 20px; font-size: 0.75rem; color: #d7e8f7; }

        /* ===== HEADER ===== */
        #app-content { display: none; }
        .header {
            display: flex;
            align-items: center;
            gap: 20px;
            background: white;
            padding: 15px 30px;
            border-radius: 12px;
            box-shadow: 0 2px 8px rgba(0,0,0,0.08);
            margin-bottom: 25px;
        }
        .header .logo { height: 60px; width: auto; object-fit: contain; }
        .header .logo-placeholder { font-size: 2.2rem; font-weight: 800; color: #2c3e50; letter-spacing: -1px; }
        .header .logo-placeholder span { color: #3498db; }
        .header .slogan { margin-left: auto; font-size: 0.9rem; color: #7f8c8d; letter-spacing: 2px; font-weight: 300; }
        .header .slogan strong { color: #2c3e50; font-weight: 600; }
        .header .user-badge { display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; border-radius: 8px; background: #f3f7fa; color: #34495e; font-size: 0.8rem; }
        .header .user-badge strong, .header .user-badge small { display: block; line-height: 1.2; }
        .header .user-badge small { color: #7f8c8d; font-size: 0.65rem; margin-top: 2px; }
        .header .btn-dashboard { background: #eef6fc; color: #2471a3; border: 1px solid #cfe5f5; padding: 9px 14px; border-radius: 7px; font-weight: 700; cursor: pointer; font-size: 0.87rem; transition: 0.2s; display: inline-flex; align-items: center; gap: 7px; }
        .header .btn-dashboard[hidden] { display: none; }
        .header .btn-dashboard:hover { background: #dceefb; color: #1b5f8a; transform: translateY(-1px); }
        .header .btn-menu { background: #3498db; color: white; border: none; padding: 9px 16px; border-radius: 7px; font-weight: 700; cursor: pointer; font-size: 0.9rem; transition: 0.2s; display: inline-flex; align-items: center; gap: 7px; }
        .header .btn-menu:hover { background: #2980b9; transform: translateY(-1px); }
        .header .btn-menu:focus-visible, .header .btn-dashboard:focus-visible, .side-menu button:focus-visible, .quick-action:focus-visible { outline: 3px solid rgba(52,152,219,0.35); outline-offset: 2px; }
        .header .btn-logout { background: #e74c3c; color: white; border: none; padding: 8px 16px; border-radius: 6px; font-weight: 600; cursor: pointer; font-size: 0.85rem; transition: background 0.3s; }
        .header .btn-logout:hover { background: #c0392b; }

        /* ===== MENU LATERAL ===== */
        .menu-overlay { position: fixed; inset: 0; background: rgba(15,23,42,0.48); opacity: 0; visibility: hidden; transition: opacity 0.25s ease, visibility 0.25s ease; z-index: 1100; backdrop-filter: blur(2px); }
        .menu-overlay.open { opacity: 1; visibility: visible; }
        .side-menu { position: fixed; top: 0; right: 0; width: min(340px, 90vw); height: 100vh; background: #fff; box-shadow: -14px 0 40px rgba(15,23,42,0.2); transform: translateX(105%); transition: transform 0.28s ease; z-index: 1200; display: flex; flex-direction: column; }
        .side-menu.open { transform: translateX(0); }
        .side-menu-header { display: flex; align-items: center; justify-content: space-between; padding: 24px; border-bottom: 1px solid #edf2f7; background: linear-gradient(135deg, #f8fbff, #eef6ff); }
        .side-menu-header strong { display: block; color: #2c3e50; font-size: 1.05rem; letter-spacing: 0.4px; }
        .side-menu-header small { display: block; color: #7f8c8d; margin-top: 3px; }
        .side-menu-close { width: 38px; height: 38px; border: none; border-radius: 50%; background: #fff; color: #566573; font-size: 1.7rem; line-height: 1; cursor: pointer; box-shadow: 0 2px 8px rgba(0,0,0,0.08); }
        .side-menu-close:hover { background: #eaf3fb; color: #2980b9; }
        .side-menu-nav { padding: 18px 14px 28px; overflow-y: auto; }
        .menu-section { margin-bottom: 20px; }
        .menu-section-title { display: block; padding: 0 12px 7px; color: #95a5a6; font-size: 0.7rem; font-weight: 800; letter-spacing: 1.1px; text-transform: uppercase; }
        .menu-item { width: 100%; display: flex; align-items: center; gap: 12px; padding: 12px 14px; margin: 3px 0; border: none; border-radius: 9px; background: transparent; color: #425466; text-align: left; font-size: 0.95rem; font-weight: 600; cursor: pointer; transition: 0.18s; }
        .menu-item span { width: 24px; text-align: center; font-size: 1.05rem; }
        .menu-item:hover { background: #f1f7fc; color: #2980b9; transform: translateX(-2px); }
        .menu-item.active { background: #e8f4fd; color: #2176ae; box-shadow: inset 3px 0 0 #3498db; }
        body.menu-open { overflow: hidden; }

        .tab-content { display: none; background: white; padding: 20px; border-radius: 12px; box-shadow: 0 2px 10px rgba(0,0,0,0.1); }
        .tab-content.active { display: block; }

        /* ===== AÇÕES RÁPIDAS ===== */
        .quick-actions { margin: 22px 0 26px; padding: 20px; border-radius: 12px; background: linear-gradient(135deg, #f8fbff, #f4f8fb); border: 1px solid #e6eef5; }
        .quick-actions-heading h3 { color: #2c3e50; font-size: 1rem; margin-bottom: 3px; }
        .quick-actions-heading p { color: #7f8c8d; font-size: 0.83rem; }
        .quick-actions-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 15px; }
        .quick-action { display: flex; align-items: center; gap: 13px; min-height: 76px; padding: 14px 16px; background: #fff; border: 1px solid #e4ebf1; border-radius: 10px; cursor: pointer; text-align: left; transition: 0.2s; color: #2c3e50; }
        .quick-action:hover { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(44,62,80,0.09); }
        .quick-action-icon { width: 42px; height: 42px; border-radius: 10px; display: grid; place-items: center; font-size: 1.25rem; flex: 0 0 auto; }
        .quick-action strong, .quick-action small { display: block; }
        .quick-action strong { font-size: 0.9rem; margin-bottom: 3px; }
        .quick-action small { color: #7f8c8d; font-size: 0.75rem; }
        .quick-action.entrada .quick-action-icon { background: #e8f8ef; }
        .quick-action.saida .quick-action-icon { background: #fdeeee; }
        .quick-action.inventario .quick-action-icon { background: #eef4fd; }
        .quick-action.transferencia .quick-action-icon { background: #f2ecfb; }

        /* ===== TRANSFERÊNCIA / PROCESSAMENTO ===== */
        .transfer-grid { display: grid; grid-template-columns: minmax(0, 1fr) 48px minmax(0, 1fr); gap: 18px; align-items: center; margin: 22px 0; }
        .transfer-card { padding: 20px; border: 1px solid #dfe8ef; border-radius: 12px; background: #f9fbfc; }
        .transfer-card.origem { border-top: 4px solid #e67e22; }
        .transfer-card.destino { border-top: 4px solid #27ae60; }
        .transfer-card h3 { margin-bottom: 15px; color: #2c3e50; }
        .transfer-card label { display: block; margin-top: 12px; font-weight: 600; color: #425466; }
        .transfer-card select, .transfer-card input { display: block; width: 100%; margin-top: 6px; padding: 10px; border: 1px solid #cfd9e2; border-radius: 7px; background: #fff; }
        .transfer-info { margin-top: 14px; padding: 10px; border-radius: 7px; background: #edf4f8; color: #526473; font-size: 0.86rem; line-height: 1.5; }
        .transfer-arrow { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; background: #eaf3fb; color: #2980b9; font-size: 1.5rem; font-weight: 800; }
        .transfer-complemento { margin-top: 8px; }
        .transfer-summary { margin: 15px 0; padding: 14px 16px; border-radius: 8px; background: #f3f8fc; border-left: 4px solid #3498db; color: #34495e; }

        /* ===== DASHBOARD CARDS ===== */
        .dash-cards {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 25px;
            margin-bottom: 35px;
        }
        .card {
            background: #ffffff;
            padding: 20px 18px;
            border-radius: 12px;
            box-shadow: 0 4px 12px rgba(0,0,0,0.06);
            border: 1px solid #f0f0f0;
            transition: 0.2s;
        }
        .card:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(0,0,0,0.08); }
        .card h3 { color: #7f8c8d; font-size: 0.85rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 6px; }
        .card .value { font-size: 1.8rem; font-weight: 700; color: #2c3e50; }
        .card .value small { font-size: 1rem; font-weight: 400; color: #7f8c8d; }
        .card .card-percentage { margin-top: 5px; font-size: 1rem; font-weight: 700; color: #e67e22; }
        .card .card-detail { margin-top: 5px; font-size: 0.78rem; color: #7f8c8d; }

        .chart-container {
    background: white;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    margin-top: 20px;
}
.chart-container canvas {
    max-height: 220px;
    width: 100% !important;
    height: auto !important;
}
.chart-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: 20px;
}
.chart-row .chart-container {
    margin-top: 0;
}
/* Para garantir que o container não cresça */
.chart-container {
    overflow: hidden;
}
        .chart-row { 
            display: grid; 
            grid-template-columns: 1fr 1fr; 
            gap: 20px; 
            margin-top: 20px; 
        }
        @media (max-width: 768px) { .chart-row { grid-template-columns: 1fr; } }
        .chart-container-hidden { display: none; }

        /* ===== NOVOS ESTILOS PARA ALERTA DE ESTOQUE ===== */
        .alerta-lista {
            display: flex;
            flex-wrap: wrap;
            gap: 15px;
            margin-top: 10px;
        }
        .alerta-item {
            flex: 1 1 200px;
            padding: 15px;
            border-radius: 8px;
            background: #f8f9fa;
            border-left: 4px solid #3498db;
        }
        .alerta-item .numero {
            font-size: 2rem;
            font-weight: 700;
        }
        .alerta-item .descricao {
            color: #555;
            font-size: 0.9rem;
        }
        .alerta-item.abaixo { border-left-color: #dc3545; }
        .alerta-item.acima { border-left-color: #ffc107; }
        .alerta-item.abaixo .numero { color: #dc3545; }
        .alerta-item.acima .numero { color: #856404; }

        /* ===== RESTANTE DOS ESTILOS ===== */
        .form-group { display: flex; flex-wrap: wrap; gap: 15px; align-items: flex-end; margin-bottom: 20px; }
        .form-group label { display: flex; flex-direction: column; font-size: 0.9rem; color: #555; }
        .form-group input, .form-group select { padding: 8px 12px; border: 1px solid #ccc; border-radius: 4px; min-width: 140px; }
        .btn { padding: 8px 16px; background: #3498db; color: white; border: none; border-radius: 4px; cursor: pointer; font-weight: 600; transition: 0.2s; }
        .btn:hover { background: #2980b9; }
        .btn-danger { background: #e74c3c; }
        .btn-danger:hover { background: #c0392b; }
        .btn-success { background: #2ecc71; }
        .btn-success:hover { background: #27ae60; }
        .btn-warning { background: #f39c12; }
        .btn-warning:hover { background: #e67e22; }
        .btn-secondary { background: #95a5a6; }
        .btn-secondary:hover { background: #7f8c8d; }
        .btn-outline { background: transparent; color: #e74c3c; border: 2px solid #e74c3c; }
        .btn-outline:hover { background: #e74c3c; color: white; }
        table { width: 100%; border-collapse: collapse; margin-top: 15px; }
        th, td { padding: 10px; text-align: left; border-bottom: 1px solid #ddd; }
        th { background: #f8f9fa; }
        .produto-item { display: flex; justify-content: space-between; padding: 5px 0; border-bottom: 1px solid #eee; }
        .import-area { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 15px; }
        .import-area input[type="file"] { padding: 6px; border: 1px solid #ccc; border-radius: 4px; }
        .import-limite { margin: -3px 0 12px; color: #526473; font-size: .86rem; }
        .msg-import { margin-top: 10px; padding: 10px; border-radius: 4px; }
        .msg-import.success { background: #d4edda; color: #155724; }
        .msg-import.error { background: #f8d7da; color: #721c24; }
        .filtros { display: flex; flex-wrap: wrap; gap: 15px; align-items: center; margin: 15px 0; }
        .filtros input, .filtros select { padding: 8px 12px; border: 1px solid #ccc; border-radius: 4px; }
        .estoque-tabela { max-height: 400px; overflow-y: auto; }

        .backup-area { margin-top: 30px; padding: 20px; background: #f8f9fa; border-radius: 8px; border: 1px dashed #ccc; }
        .backup-area .btn { margin-right: 10px; margin-bottom: 8px; }
        .backup-importar-label { cursor: pointer; display: inline-block; }
        .backup-mensagem { margin-left: 15px; font-weight: 600; }

        .produtos-topo { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 18px; }
        .produtos-topo h2 { margin-bottom: 5px; }
        .produtos-filtros { padding: 15px; border: 1px solid #dfe8ef; border-radius: 10px; background: #f8fafc; }
        .produtos-filtros input { min-width: 260px; flex: 1; }
        .produtos-total { margin-left: auto; color: #526473; font-size: .88rem; white-space: nowrap; }
        .tabela-produtos-wrap { width: 100%; overflow-x: auto; border: 1px solid #dfe8ef; border-radius: 10px; background: white; }
        .tabela-produtos-wrap #tabela-produtos { display: table; min-width: 1180px; margin-top: 0; }
        .tabela-produtos-wrap thead { position: sticky; top: 0; z-index: 1; }
        .produto-acoes { display: flex; gap: 6px; white-space: nowrap; }
        .btn-visualizar { background: #2471a3; }
        .btn-visualizar:hover { background: #1a5276; }

        .modal-produto { width: min(1120px, calc(100% - 30px)); max-width: none; max-height: calc(100vh - 30px); padding: 0; border: 0; border-radius: 14px; background: transparent; box-shadow: 0 24px 70px rgba(15, 23, 42, .3); }
        .modal-produto::backdrop { background: rgba(15, 23, 42, .62); backdrop-filter: blur(2px); }
        .modal-produto-conteudo { max-height: calc(100vh - 30px); overflow-y: auto; padding: 24px; border-radius: 14px; background: white; }
        .modal-cadastro-conteudo { width: 100%; }
        .modal-produto-cabecalho { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; padding-bottom: 15px; margin-bottom: 20px; border-bottom: 1px solid #dfe8ef; }
        .modal-produto-cabecalho h2 { margin-bottom: 4px; color: #243746; }
        .modal-produto-cabecalho p { color: #6b7c8c; font-size: .9rem; }
        .modal-fechar { width: 38px; height: 38px; flex: 0 0 auto; border: 0; border-radius: 50%; background: #eef2f6; color: #526473; cursor: pointer; font-size: 1.6rem; line-height: 1; }
        .modal-fechar:hover { background: #dfe8ef; color: #243746; }
        .modal-produto-rodape { display: flex; justify-content: flex-end; margin-top: 20px; padding-top: 15px; border-top: 1px solid #dfe8ef; }
        .produto-periodo { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px; margin-bottom: 18px; padding: 14px; background: #f8fafc; border: 1px solid #dfe8ef; border-radius: 10px; }
        .produto-periodo label { display: flex; flex-direction: column; gap: 5px; color: #526473; font-size: .82rem; font-weight: 700; }
        .produto-periodo input { padding: 8px 10px; border: 1px solid #cfd9e2; border-radius: 6px; background: white; }
        .produto-resumo-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
        .produto-resumo-cards article { min-width: 0; padding: 15px; border: 1px solid #dfe8ef; border-radius: 10px; background: #fbfdff; }
        .produto-resumo-cards small, .produto-resumo-cards strong, .produto-resumo-cards span { display: block; }
        .produto-resumo-cards small { margin-bottom: 6px; color: #6b7c8c; }
        .produto-resumo-cards strong { color: #1f3347; font-size: 1.2rem; overflow-wrap: anywhere; }
        .produto-resumo-cards span { margin-top: 5px; color: #2471a3; font-size: .82rem; font-weight: 650; }
        .produto-resumo-cards .produto-periodo-invalido { grid-column: 1 / -1; border-color: #f2c4c0; background: #fff6f5; }
        .produto-resumo-cards .produto-periodo-invalido strong { color: #a93226; font-size: 1rem; }
        .produto-historico-wrap { max-height: 330px; margin-top: 20px; border: 1px solid #dfe8ef; border-radius: 10px; }
        .produto-historico { min-width: 850px; margin-top: 0; }
        .produto-historico thead { position: sticky; top: 0; z-index: 1; }
        .produto-visual-nota { margin-top: 12px; color: #6b7c8c; font-size: .82rem; }

        .relatorio-container { background: #fafbfc; border-radius: 12px; padding: 25px; border: 1px solid #e9ecef; }
        .relatorio-filtros {
            display: flex;
            flex-wrap: wrap;
            gap: 20px;
            align-items: flex-end;
            margin-bottom: 25px;
            padding: 20px;
            background: white;
            border-radius: 10px;
            border: 1px solid #edf2f7;
        }
        .relatorio-filtros label { display: flex; flex-direction: column; font-size: 0.85rem; font-weight: 500; color: #555; gap: 4px; }
        .relatorio-filtros input, .relatorio-filtros select {
            padding: 8px 12px;
            border: 1px solid #d1d5db;
            border-radius: 6px;
            font-size: 0.95rem;
            min-width: 160px;
            background: white;
        }
        .relatorio-acoes { display: flex; flex-wrap: wrap; gap: 12px; margin: 20px 0 25px 0; }
        .relatorio-acoes .btn { padding: 10px 22px; border-radius: 8px; font-size: 0.95rem; box-shadow: 0 2px 4px rgba(0,0,0,0.05); transition: all 0.2s; }
        .relatorio-acoes .btn:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0,0,0,0.1); }
        .relatorio-status { padding: 12px 18px; background: #f8f9fa; border-radius: 8px; color: #2c3e50; border-left: 4px solid #3498db; margin-top: 10px; }
        .relatorio-status strong { color: #2c3e50; }

        .dre-section { margin-top: 28px; padding: 24px; background: #fff; border: 1px solid #dce5ee; border-radius: 12px; box-shadow: 0 8px 24px rgba(15, 23, 42, .05); }
        .dre-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
        .dre-heading h3 { color: #1f3347; margin: 0 0 5px; font-size: 1.25rem; }
        .dre-heading p { color: #64748b; margin: 0; line-height: 1.45; }
        .dre-badge { flex: 0 0 auto; padding: 6px 10px; border-radius: 999px; background: #e0f2fe; border: 1px solid #bae6fd; color: #075985; font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .03em; }
        .dre-actions { display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0 14px; }
        .dre-aviso { padding: 11px 14px; border-left: 4px solid #f59e0b; background: #fffbeb; color: #854d0e; border-radius: 7px; line-height: 1.45; }
        .dre-aviso.success { border-left-color: #16a34a; background: #f0fdf4; color: #166534; }
        .dre-aviso.error { border-left-color: #dc2626; background: #fef2f2; color: #991b1b; }
        .dre-periodo { margin: 20px 0 12px; font-weight: 700; color: #334155; }
        .dre-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
        .dre-cards article { padding: 15px; border: 1px solid #e2e8f0; border-radius: 10px; background: #f8fafc; min-width: 0; }
        .dre-cards span { display: block; color: #64748b; font-size: .82rem; margin-bottom: 6px; }
        .dre-cards strong { display: block; color: #0f172a; font-size: 1.25rem; overflow-wrap: anywhere; }
        .dre-cards .dre-resultado-card { border-color: #bbf7d0; background: #f0fdf4; }
        .dre-cards .dre-resultado-card strong { color: #15803d; }
        .dre-cards .dre-resultado-card.negativo { border-color: #fecaca; background: #fef2f2; }
        .dre-cards .dre-resultado-card.negativo strong { color: #dc2626; }
        .dre-cards .dre-informativo { border-style: dashed; }
        .dre-nota { color: #64748b; font-size: .82rem; margin: 12px 0 4px; line-height: 1.45; }
        .dre-table-wrap { margin-top: 14px; }
        .dre-table-wrap th:not(:first-child), .dre-table-wrap td:not(:first-child) { text-align: right; }
        .dre-sem-dados { text-align: center !important; color: #64748b; padding: 24px !important; }

        .import-preview-area { margin-top: 15px; border-top: 2px solid #b8d4f0; padding-top: 15px; }
        .import-preview-area table input[type="number"], .import-preview-area table input[type="text"] {
            width: 100px; padding: 4px 6px; border: 1px solid #ccc; border-radius: 4px;
        }
        .import-preview-area table input[type="text"] { width: 150px; }
        .preview-actions { display: flex; flex-wrap: wrap; gap: 15px; margin-top: 15px; align-items: center; }
        .prod-preview-cabecalho { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin: 8px 0; color: #526473; }
        .prod-preview-cabecalho span { font-weight: 700; }
        .prod-preview-paginacao { display: flex; align-items: center; justify-content: center; gap: 14px; margin-top: 12px; }
        .prod-preview-paginacao[hidden] { display: none; }
        .prod-preview-paginacao .btn:disabled { opacity: .5; cursor: not-allowed; }
        .import-produto-status { display: block; margin-top: 4px; color: #526473; font-size: .75rem; }
        .import-produto-status.erro, .import-produto-invalido { color: #dc3545; font-weight: 700; }
        .import-ajuda-unidades { margin-top: 5px; color: #526473; font-size: .82rem; line-height: 1.4; }
        .import-preview-area table select.import-unidade-select {
            width: 76px; padding: 4px 6px; border: 1px solid #ccc; border-radius: 4px; background: white;
        }
        .import-linha-erro { background: #fff0f1; }
        .import-linha-negativa { background: #fff8e1; }
        .import-status-ok { color: #18733b; font-weight: 800; min-width: 90px; }
        .import-status-aviso { color: #8a5a00; font-weight: 800; min-width: 210px; }
        .import-status-erro { color: #b42318; font-weight: 800; min-width: 240px; white-space: normal; }
        .inventario-preview-table { min-width: 1250px; }
        .inventario-preview-table th { white-space: nowrap; }
        .inventario-preview-table td { vertical-align: top; }
        .import-area .btn:disabled { opacity: .55; cursor: wait; }
        .import-box { margin-top: 20px; padding: 15px; background: #f8f9fa; border-radius: 8px; border: 1px solid #ddd; }
        .import-box h4 { margin-bottom: 10px; color: #2c3e50; }
        .xml-import-area { margin-top: 20px; padding: 15px; background: #f0f7ff; border-radius: 8px; border: 1px solid #b8d4f0; }
        .xml-preview-table-wrap { max-height: 430px; overflow: auto; border: 1px solid #ddd; border-radius: 6px; background: white; }
        .xml-preview-table { min-width: 1550px; margin-top: 0; }
        .xml-preview-table thead { position: sticky; top: 0; z-index: 2; }
        .xml-preview-table th { white-space: nowrap; }
        .xml-preview-table td { vertical-align: top; }
        .entradas-topo { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 22px; }
        .entradas-topo h2 { margin-bottom: 5px; }
        .entradas-historico-destaque { padding: 20px; border: 1px solid #cfe0ee; border-radius: 12px; background: #fff; box-shadow: 0 8px 24px rgba(15, 23, 42, .06); }
        .entradas-historico-cabecalho { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
        .entradas-historico-cabecalho h3 { margin: 0 0 4px; color: #243746; }
        .entradas-historico-cabecalho p { margin: 0; color: #6b7c8c; font-size: .88rem; }
        .entradas-badge { padding: 6px 10px; border-radius: 999px; background: #e8f7ee; color: #18733b; font-size: .76rem; font-weight: 800; text-transform: uppercase; letter-spacing: .03em; }
        .modal-entrada { width: min(1260px, calc(100% - 30px)); }
        .entrada-escolha { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; padding: 8px 0; }
        .entrada-opcao { display: flex; min-height: 190px; flex-direction: column; align-items: flex-start; justify-content: center; gap: 8px; padding: 24px; border: 1px solid #cfe0ee; border-radius: 12px; background: #f8fbfe; color: #243746; text-align: left; cursor: pointer; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
        .entrada-opcao:hover { transform: translateY(-2px); border-color: #3498db; box-shadow: 0 10px 24px rgba(36, 113, 163, .12); }
        .entrada-opcao-icone { font-size: 2rem; }
        .entrada-opcao strong { font-size: 1.05rem; }
        .entrada-opcao small { color: #6b7c8c; line-height: 1.45; }
        .entrada-painel[hidden], .entrada-escolha[hidden] { display: none; }
        .entrada-voltar { margin-bottom: 16px; }
        .entrada-painel-titulo { margin-bottom: 16px; }
        .entrada-painel-titulo h3 { margin-bottom: 4px; color: #243746; }
        .entrada-painel-titulo p { color: #6b7c8c; font-size: .88rem; }
        .entrada-painel .xml-import-area { margin-top: 0; }
        .btn-xml-excluir { white-space: nowrap; padding: 7px 10px; }
        .xml-preview-table input, .xml-preview-table select {
            width: 125px; padding: 7px 8px; border: 1px solid #bdc8d3; border-radius: 5px; background: white;
        }
        .xml-preview-table .xml-produto-select { width: 300px; }
        .xml-preview-table .xml-unidade-select { width: 82px; }
        .xml-preview-table .xml-unidade-estoque { width: 72px; margin: 0 0 0 5px; }
        .xml-preview-table select:disabled,
        .xml-preview-table input:disabled { background: #eef2f6; color: #526170; cursor: not-allowed; }
        .xml-converter-toggle { display: flex; flex-direction: row; align-items: center; gap: 6px; margin-bottom: 6px; color: #2471a3; font-weight: 700; white-space: nowrap; }
        .xml-converter-toggle input { width: 17px !important; height: 17px; margin: 0; }
        .xml-item-nome, .xml-conversao-ajuda { display: block; margin-top: 5px; color: #64748b; font-size: .76rem; line-height: 1.3; }
        .xml-item-nome { max-width: 210px; }
        .xml-conversao-ajuda { max-width: 170px; }

        .footer { margin-top: 40px; padding: 20px 0; text-align: center; border-top: 1px solid #ddd; color: #7f8c8d; font-size: 0.9rem; }
        .footer strong { color: #2c3e50; }

        /* ===== V6.8/6.9: FICHA TÉCNICA E FORNECEDORES ===== */
        .ficha-toggle { flex-direction: row !important; align-items: center; gap: 8px; min-height: 36px; padding: 8px 12px; border: 1px solid #b8d4f0; border-radius: 7px; background: #f0f7ff; color: #2471a3 !important; font-weight: 800; cursor: pointer; }
        .ficha-toggle input { min-width: auto !important; width: 18px !important; height: 18px; }
        .produto-config { border: 1px solid #d9e2ea; border-radius: 8px; padding: 10px 12px; background: #f8fafc; min-width: 250px; }
        .produto-config legend, .produto-config summary { color: #2c3e50; font-weight: 700; cursor: pointer; }
        fieldset.produto-config { display: flex; flex-wrap: wrap; gap: 10px; }
        details.produto-config[open] { display: grid; grid-template-columns: repeat(2, minmax(180px, 1fr)); gap: 8px 14px; }
        details.produto-config label { flex-direction: row; align-items: center; gap: 7px; }
        details.produto-config input[type="checkbox"] { min-width: auto; width: 17px; height: 17px; }
        #prod-embalagem-unidade { margin-left: 7px; font-weight: 700; color: #2471a3; }
        .ficha-panel { margin: 18px 0 24px; padding: 22px; background: #fbfdff; border: 1px solid #cfe5f5; border-radius: 12px; box-shadow: 0 5px 18px rgba(52,152,219,0.08); }
        .ficha-heading { display: flex; justify-content: space-between; gap: 20px; align-items: flex-start; margin-bottom: 18px; }
        .ficha-heading h3 { color: #2c3e50; margin-bottom: 4px; }
        .ficha-heading p, .modulo-descricao { color: #6b7c8c; font-size: 0.9rem; }
        .badge-ficha { display: inline-block; padding: 4px 9px; border-radius: 999px; background: #e7f6ed; color: #18723a; font-size: 0.74rem; font-weight: 800; white-space: nowrap; }
        .ficha-adicionar { display: flex; align-items: flex-end; gap: 12px; margin-bottom: 12px; }
        .ficha-adicionar label, .ficha-complementos label { display: flex; flex-direction: column; gap: 5px; font-size: 0.82rem; font-weight: 700; color: #526473; }
        .ficha-adicionar label { flex: 1; }
        .ficha-adicionar select, .ficha-complementos input { width: 100%; padding: 9px 11px; border: 1px solid #cfd9e2; border-radius: 6px; background: white; }
        .tabela-responsiva { width: 100%; overflow-x: auto; }
        #tabela-produtos { white-space: nowrap; }
        .ficha-table { min-width: 850px; }
        .ficha-table input { width: 90px; padding: 6px; border: 1px solid #ccd6df; border-radius: 5px; }
        .tabela-vazia { text-align: center; padding: 24px; color: #8493a1; }
        .btn-compacto { padding: 4px 9px; min-width: 32px; }
        .ficha-complementos { display: grid; grid-template-columns: minmax(180px, 0.35fr) 1fr; gap: 15px; margin-top: 16px; }
        .ficha-resumo { display: grid; grid-template-columns: repeat(5, minmax(130px, 1fr)); gap: 10px; margin-top: 18px; }
        .ficha-resumo div { padding: 13px; border-radius: 8px; background: white; border: 1px solid #e0e8ef; }
        .ficha-resumo small, .ficha-resumo strong { display: block; }
        .ficha-resumo small { color: #7b8a97; margin-bottom: 5px; }
        .ficha-resumo strong { color: #243746; font-size: 1.05rem; }
        .ficha-nota { margin-top: 10px; color: #667788; font-size: 0.77rem; }
        .margem-alerta { color: #c0392b; font-weight: 800; }
        .margem-ok { color: #198754; font-weight: 800; }

        .fornecedor-form-card { margin-top: 20px; padding: 22px; border: 1px solid #e0e8ef; border-radius: 12px; background: #fbfcfd; }
        .fornecedor-form-card h3 { color: #2c3e50; }
        .form-section-title { margin: 22px 0 10px; padding-bottom: 6px; border-bottom: 1px solid #dfe8ef; color: #2471a3; font-size: 0.78rem; font-weight: 900; letter-spacing: 0.8px; text-transform: uppercase; }
        .fornecedor-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
        .fornecedor-grid label { display: flex; flex-direction: column; gap: 5px; color: #526473; font-size: 0.82rem; font-weight: 700; }
        .fornecedor-grid input, .fornecedor-grid select, .fornecedor-grid textarea { width: 100%; padding: 9px 10px; border: 1px solid #cfd9e2; border-radius: 6px; background: white; font: inherit; font-weight: 400; }
        .grid-span-2 { grid-column: span 2; }
        .form-actions { display: flex; gap: 10px; margin-top: 20px; }
        #msg-fornecedor { min-height: 25px; margin-top: 10px; }

        /* ===== V6.9.1: COMPRAS, COTAÇÕES E PEDIDOS ===== */
        .compras-card { margin-top: 20px; padding: 22px; border: 1px solid #dfe8ef; border-radius: 12px; background: #fbfcfd; }
        .section-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 16px; }
        .section-heading h3 { color: #2c3e50; margin-bottom: 4px; }
        .section-heading p { color: #71808e; font-size: 0.84rem; }
        .vinculo-grid { margin-top: 10px; }
        .check-compras { flex-direction: row !important; align-items: center; align-self: end; min-height: 39px; padding: 9px 10px; border: 1px solid #cfe5f5; border-radius: 6px; background: #f0f7ff; color: #2471a3 !important; }
        .check-compras input { width: auto !important; }
        .badge-principal { display: inline-block; margin-left: 6px; padding: 2px 7px; border-radius: 999px; background: #e8f4fd; color: #2176ae; font-size: 0.68rem; font-weight: 800; }
        .status-badge { display: inline-block; padding: 4px 8px; border-radius: 999px; background: #eef2f5; color: #526473; font-size: 0.7rem; font-weight: 850; text-transform: uppercase; white-space: nowrap; }
        .status-em_cotacao, .status-rascunho { background: #fff4d6; color: #936b00; }
        .status-aprovada, .status-recebido { background: #e3f7eb; color: #176c37; }
        .status-pedido_gerado, .status-emitido { background: #e8f4fd; color: #1f6e9f; }
        .status-cancelada, .status-cancelado { background: #fdeaea; color: #a93226; }
        .mensagem-sucesso { color: #198754; margin-top: 10px; font-weight: 650; }
        .mensagem-erro { color: #dc3545; margin-top: 10px; font-weight: 650; }
        .cotacao-item-adicionar { display: grid; grid-template-columns: minmax(240px, 1fr) 180px auto; gap: 12px; align-items: end; margin: 18px 0 10px; }
        .cotacao-item-adicionar label { display: flex; flex-direction: column; gap: 5px; color: #526473; font-size: 0.82rem; font-weight: 700; }
        .cotacao-item-adicionar select, .cotacao-item-adicionar input { padding: 9px 10px; border: 1px solid #cfd9e2; border-radius: 6px; background: white; }
        .cotacao-detalhe { border-top: 4px solid #3498db; box-shadow: 0 8px 25px rgba(44,62,80,0.1); }
        .comparativo-table { min-width: 1120px; }
        .comparativo-table input[type="number"] { width: 105px; }
        .comparativo-table input[type="text"] { width: 150px; }
        .comparativo-table input[type="date"] { width: 135px; }
        .comparativo-table input:not([type="radio"]) { padding: 6px 7px; border: 1px solid #ccd6df; border-radius: 5px; }
        .comparativo-table input:disabled { background: #f2f4f6; color: #526473; }
        .comparativo-produto td { padding: 12px 10px; background: #eaf3fb; color: #245b7a; border-top: 2px solid #b9d8ed; }
        .sem-proposta { padding: 16px !important; color: #a93226; background: #fff7f6; }
        .cotacao-acoes { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: 18px; }
        #acoes-cotacao-editavel { display: flex; flex-wrap: wrap; gap: 10px; }
        .pedido-detalhe { border-top: 4px solid #27ae60; }
        .pedido-total { margin-top: 18px; text-align: right; color: #526473; font-size: 1.15rem; }
        .pedido-total strong { color: #1f6e45; font-size: 1.35rem; }

        .grafico-barra { display: flex; align-items: center; gap: 10px; margin: 5px 0; }
        .barra { height: 20px; background: #3498db; border-radius: 4px; }

        @media (max-width: 768px) {
            body { padding: 10px; }
            #login-screen { padding: 20px 0; overflow-y: auto; }
            .login-visual { position: fixed; }
            .login-visual::after {
                background:
                    radial-gradient(circle at center, rgba(4, 35, 58, 0.34) 0%, rgba(4, 35, 58, 0.68) 100%),
                    rgba(3, 27, 45, 0.30);
            }
            .login-card {
                width: min(420px, calc(100% - 28px));
                max-height: none;
                margin: auto;
                border-radius: 18px;
            }
            .login-form { padding: 32px 24px; }
            .form-group label { min-width: 100%; }
            .form-group input, .form-group select { width: 100%; }
            .header { gap: 10px; padding: 12px 14px; }
            .header .logo { height: 44px; }
            .header .logo-placeholder { font-size: 1.35rem; }
            .header .slogan { display: none; }
            .header .user-badge span:last-child { display: none; }
            .empresa-badge strong { display: none; }
            .header .btn-dashboard { margin-left: auto; padding: 9px 12px; }
            .header .btn-dashboard[hidden] + .btn-menu { margin-left: auto; }
            .header .btn-menu { padding: 9px 12px; }
            .header .btn-logout { padding: 9px 12px; }
            .dash-cards { grid-template-columns: 1fr; }
            .quick-actions-grid { grid-template-columns: 1fr; }
            .transfer-grid { grid-template-columns: 1fr; }
            .transfer-arrow { transform: rotate(90deg); margin: 0 auto; }
            .relatorio-filtros label { width: 100%; }
            .relatorio-filtros input, .relatorio-filtros select { width: 100%; }
            .dre-section { padding: 17px; }
            .dre-heading { flex-direction: column; }
            .dre-cards { grid-template-columns: 1fr; }
            .import-preview-area table input[type="number"] { width: 70px; }
            .import-preview-area table input[type="text"] { width: 100px; }
            .chart-row { grid-template-columns: 1fr; }
            .fornecedor-grid { grid-template-columns: 1fr; }
            .grid-span-2 { grid-column: span 1; }
            .ficha-adicionar, .ficha-heading { flex-direction: column; }
            .ficha-adicionar { align-items: stretch; }
            .ficha-complementos, .ficha-resumo { grid-template-columns: 1fr; }
            .cotacao-item-adicionar { grid-template-columns: 1fr; }
            .section-heading { flex-direction: column; }
        }

        @media (max-width: 430px) {
            .header .dashboard-label { display: none; }
            .header .menu-label { display: none; }
            .header .logout-label { display: none; }
            .tab-content { padding: 15px; }
            .prod-preview-cabecalho { align-items: flex-start; flex-direction: column; }
        }
.empresa-badge{display:flex;align-items:center;gap:7px;background:#eef8f4;color:#087a52;border:1px solid #c9ebdf;border-radius:8px;padding:7px 10px;font-size:.8rem;max-width:220px}.empresa-badge strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ===== V7.0.3.1: BLOQUEIO GLOBAL DE PROCESSAMENTO ===== */
@keyframes global-loading-spin { to { transform: rotate(360deg); } }

/* v7.0.4 — Ordens de produção */
.quick-action.producao { border-color: #8e44ad; }
.producao-card { margin: 18px 0; padding: 18px; border: 1px solid #dfe7ee; border-radius: 12px; background: #fff; }
.producao-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.producao-form-grid label { display: flex; flex-direction: column; gap: 6px; font-weight: 600; }
.producao-form-grid .grid-span-2 { grid-column: span 2; }
.form-actions, .producao-actions { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; margin-top: 15px; }
.section-heading { display: flex; justify-content: space-between; gap: 15px; align-items: flex-start; }
.section-heading h3, .section-heading p { margin-top: 0; }
.table-responsive { overflow-x: auto; }
.producao-status { display: inline-block; padding: 5px 9px; border-radius: 999px; font-size: .78rem; font-weight: 800; }
.status-rascunho { background: #eef2f5; color: #51606d; }
.status-confirmada { background: #fff3cd; color: #765a00; }
.status-concluida { background: #d8f3e4; color: #17643a; }
.status-cancelada { background: #fde2e2; color: #982c2c; }
.status-revertida { background: #eadff4; color: #66318a; }
.producao-resumo { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 16px 0; }
.producao-resumo > div { padding: 12px; border-radius: 9px; background: #f7fafc; border: 1px solid #e5edf3; }
.producao-resumo small, .producao-resumo strong { display: block; }
.producao-resumo small { margin-bottom: 5px; color: #617282; }
.producao-explosao-wrap { margin: 18px 0; padding: 12px; border: 1px solid #dfe7ee; border-radius: 9px; }
.producao-explosao-wrap summary { cursor: pointer; font-weight: 700; }
.explosao-linha { display: grid; grid-template-columns: 1fr auto auto; gap: 10px; padding: 8px 10px; margin-left: calc((var(--nivel) - 1) * 18px); border-bottom: 1px solid #edf1f4; }
.explosao-linha small { color: #7d4e9b; font-weight: 700; }
.producao-eventos { padding-left: 22px; }
.producao-eventos li { margin: 8px 0; }
.producao-eventos span { color: #617282; }
.text-success { color: #187442; font-weight: 700; }
.text-danger { color: #b12929; font-weight: 700; }
.empty-row { text-align: center; color: #758492; padding: 22px; }
.msg.sucesso { color: #187442; font-weight: 700; }
.msg.erro { color: #b12929; font-weight: 700; }

@media (max-width: 760px) {
    .producao-form-grid, .producao-resumo { grid-template-columns: 1fr; }
    .producao-form-grid .grid-span-2 { grid-column: auto; }
    .explosao-linha { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
    .global-loading-discreto-spinner { animation-duration: 1.5s; }
}
/* Integrações v7.0.5 */
.integracao-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.integracao-heading h2{margin-bottom:4px}.integracao-heading p{color:#64748b}.integracao-readonly{background:#e0f2fe;color:#075985;border:1px solid #bae6fd;padding:7px 11px;border-radius:999px;font-weight:700;font-size:.78rem;white-space:nowrap}.integracao-card,.integracao-resultados{background:#fff;border:1px solid #dfe7ef;border-radius:14px;padding:22px;box-shadow:0 8px 24px rgba(15,23,42,.06);margin-bottom:22px}.integracao-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}.integracao-grid label{font-weight:700;color:#334155;display:flex;flex-direction:column;gap:6px}.integracao-grid label small{font-weight:400;color:#64748b}.integracao-grid input,.integracao-grid select{width:100%;padding:11px 12px;border:1px solid #cbd5e1;border-radius:8px;background:#fff}.integracao-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px}.integracao-ultima-sync{color:#64748b;font-size:.88rem}.btn-sync{display:inline-flex;align-items:center;gap:9px}.sync-wheel{width:17px;height:17px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;display:inline-block}.btn-sync.is-loading .sync-wheel{animation:integracao-spin .7s linear infinite}.integracao-mensagem{display:none;margin-top:16px;border-radius:8px;padding:11px 13px}.integracao-mensagem:not(:empty){display:block}.integracao-mensagem.success{background:#dcfce7;color:#166534}.integracao-mensagem.error{background:#fee2e2;color:#991b1b}.integracao-mensagem.info{background:#e0f2fe;color:#075985}.integracao-resumo{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.integracao-resumo>div{border:1px solid #e2e8f0;background:#f8fafc;border-radius:10px;padding:14px}.integracao-resumo span{display:block;color:#64748b;font-size:.8rem;margin-bottom:5px}.integracao-resumo strong{font-size:1.35rem;color:#0f172a}.integracao-resumo .ok{border-color:#bfdbfe;background:#eff6ff}.integracao-resumo .ok strong{color:#1d4ed8}.integracao-resumo .erro{border-color:#fecaca;background:#fef2f2}.integracao-resumo .erro strong{color:#dc2626}.integracao-legenda{display:flex;gap:20px;flex-wrap:wrap;margin:18px 0;color:#475569;font-size:.88rem}.integracao-legenda span{display:flex;align-items:center;gap:7px}.legenda-joinha{font-size:1.15rem}.legenda-joinha,.integracao-status-icon{font-family:"Segoe UI Symbol","Noto Sans Symbols 2",sans-serif}.legenda-joinha.ok,.integracao-status-icon.ok{color:#2563eb}.legenda-joinha.erro,.integracao-status-icon.erro{color:#dc2626}.integracao-filtros{align-items:center}.integracao-filtros input{min-width:280px;flex:1}.integracao-table-wrap{max-height:620px;overflow:auto}.integracao-table-wrap thead{position:sticky;top:0;z-index:1}.integracao-status-icon{font-size:1.35rem;display:inline-block}.integracao-divergente{background:#fffafa}.integracao-vazio{text-align:center;color:#64748b;padding:28px!important}.text-danger{color:#dc2626;font-weight:700}@keyframes integracao-spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.integracao-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.integracao-resumo{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.integracao-heading{flex-direction:column}.integracao-grid,.integracao-resumo{grid-template-columns:1fr}.integracao-actions .btn{width:100%;justify-content:center}.integracao-filtros input{min-width:100%}}
.configuracao-toggle {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    margin: 16px 0;
    border: 1px solid #d9e2ec;
    border-radius: 10px;
    background: #f8fafc;
    cursor: pointer;
}

.configuracao-toggle input {
    width: 20px;
    height: 20px;
    margin-top: 2px;
}

.configuracao-toggle span {
    display: grid;
    gap: 4px;
}

.configuracao-toggle small {
    color: #52606d;
}

/* ===== V7.0.6.9: MODO CLARO / ESCURO ===== */
.header .btn-theme {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 9px 13px;
    border: 1px solid #d7e2ea;
    border-radius: 7px;
    background: #f6f9fb;
    color: #34495e;
    font-size: 0.85rem;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s, border-color 0.2s, color 0.2s, transform 0.2s;
}
.header .btn-theme:hover {
    background: #eaf2f8;
    border-color: #b9d3e5;
    transform: translateY(-1px);
}
.header .btn-theme:focus-visible {
    outline: 3px solid rgba(52, 152, 219, 0.35);
    outline-offset: 2px;
}
.theme-icon { line-height: 1; }

html[data-theme="dark"] body {
    background: #0f172a;
    color: #e2e8f0;
}
html[data-theme="dark"] .header,
html[data-theme="dark"] .tab-content,
html[data-theme="dark"] .card,
html[data-theme="dark"] .chart-container,
html[data-theme="dark"] .quick-action,
html[data-theme="dark"] .producao-card,
html[data-theme="dark"] .integracao-card,
html[data-theme="dark"] .integracao-resultados,
html[data-theme="dark"] .ficha-resumo div,
html[data-theme="dark"] .modal-produto-conteudo,
html[data-theme="dark"] .tabela-produtos-wrap,
html[data-theme="dark"] .entradas-historico-destaque {
    background: #1e293b;
    color: #e2e8f0;
    border-color: #334155;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.24);
}

/* PDV Legal v8.6.0 */
.pdv-kpis{margin-bottom:16px}.pdv-nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.pdv-nav .btn{font-size:.82rem}.pdv-nav .btn.active{background:#2563eb;color:#fff;border-color:#2563eb}.pdv-painel[hidden]{display:none!important}.pdv-filiais-lista{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:16px}.pdv-filial{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #dfe7ef;border-radius:10px;background:#f8fafc}.pdv-filial input{width:20px;height:20px}.pdv-filial span,.pdv-filial small{display:block}.pdv-filial.inativa{opacity:.55}.pdv-regra-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;align-items:end}.pdv-regra-grid label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#334155}.pdv-regra-grid .pdv-check,.pdv-check{display:flex;flex-direction:row;align-items:center;gap:8px;font-weight:600}.pdv-check input{width:18px;height:18px}.integracao-table-wrap td select,.integracao-table-wrap td input{min-width:150px;margin:2px 0;padding:7px}.integracao-table-wrap td small,.pdv-regras-tbody small{display:block;color:#64748b;margin-top:3px}.inventario-leitor{display:grid;grid-template-columns:minmax(240px,1fr) auto minmax(220px,1fr);gap:12px;align-items:end;margin:14px 0;padding:14px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff}.inventario-leitor label{display:flex;flex-direction:column;gap:6px;font-weight:700}.inventario-leitor span{align-self:center;color:#1e3a8a;font-size:.88rem}html[data-theme="dark"] .pdv-filial,html[data-theme="dark"] .inventario-leitor{background:#14233a;border-color:#294366}html[data-theme="dark"] .pdv-regra-grid label{color:#dbe7f5}@media(max-width:760px){.inventario-leitor{grid-template-columns:1fr}.inventario-leitor .btn{width:100%}.pdv-nav .btn{flex:1 1 160px}}
html[data-theme="dark"] .quick-actions,
html[data-theme="dark"] .transfer-card,
html[data-theme="dark"] .transfer-info,
html[data-theme="dark"] .transfer-summary,
html[data-theme="dark"] .alerta-item,
html[data-theme="dark"] .backup-area,
html[data-theme="dark"] .relatorio-container,
html[data-theme="dark"] .relatorio-filtros,
html[data-theme="dark"] .relatorio-status,
html[data-theme="dark"] .import-box,
html[data-theme="dark"] .xml-import-area,
html[data-theme="dark"] .xml-preview-table-wrap,
html[data-theme="dark"] .produto-config,
html[data-theme="dark"] .ficha-panel,
html[data-theme="dark"] .fornecedor-form-card,
html[data-theme="dark"] .compras-card,
html[data-theme="dark"] .configuracao-toggle,
html[data-theme="dark"] .produtos-filtros,
html[data-theme="dark"] .produto-periodo,
html[data-theme="dark"] .produto-resumo-cards article,
html[data-theme="dark"] .produto-historico-wrap,
html[data-theme="dark"] .producao-resumo > div,
html[data-theme="dark"] .producao-explosao-wrap,
html[data-theme="dark"] .integracao-resumo > div {
    background: #172033;
    color: #dbe5f0;
    border-color: #334155;
}
html[data-theme="dark"] .entrada-opcao {
    background: #172033;
    color: #f1f5f9;
    border-color: #334155;
}
html[data-theme="dark"] .entrada-opcao:hover {
    border-color: #60a5fa;
}
html[data-theme="dark"] .entrada-opcao small,
html[data-theme="dark"] .entrada-painel-titulo p,
html[data-theme="dark"] .entradas-historico-cabecalho p {
    color: #94a3b8;
}
html[data-theme="dark"] .entrada-painel-titulo h3,
html[data-theme="dark"] .entradas-historico-cabecalho h3 {
    color: #f1f5f9;
}
html[data-theme="dark"] .entradas-badge {
    background: #143526;
    color: #86efac;
}
html[data-theme="dark"] #app-content label,
html[data-theme="dark"] .form-group label,
html[data-theme="dark"] .relatorio-filtros label,
html[data-theme="dark"] .ficha-adicionar label,
html[data-theme="dark"] .ficha-complementos label,
html[data-theme="dark"] .fornecedor-grid label,
html[data-theme="dark"] .cotacao-item-adicionar label,
html[data-theme="dark"] .integracao-grid label,
html[data-theme="dark"] .transfer-card label {
    color: #cbd5e1;
}
html[data-theme="dark"] .modal-produto-cabecalho,
html[data-theme="dark"] .modal-produto-rodape {
    border-color: #334155;
}
html[data-theme="dark"] .modal-produto-cabecalho h2,
html[data-theme="dark"] .produto-resumo-cards strong {
    color: #f1f5f9;
}
html[data-theme="dark"] .modal-produto-cabecalho p,
html[data-theme="dark"] .produtos-total,
html[data-theme="dark"] .produto-visual-nota,
html[data-theme="dark"] .produto-resumo-cards small {
    color: #94a3b8;
}
html[data-theme="dark"] .modal-fechar {
    background: #263449;
    color: #cbd5e1;
}
html[data-theme="dark"] .modal-fechar:hover {
    background: #334155;
    color: #f8fafc;
}
html[data-theme="dark"] .produto-resumo-cards .produto-periodo-invalido {
    background: #3a2028;
    border-color: #713747;
}
html[data-theme="dark"] .produto-resumo-cards .produto-periodo-invalido strong {
    color: #fca5a5;
}
html[data-theme="dark"] .side-menu {
    background: #111827;
    color: #e5edf6;
    border-color: #334155;
    box-shadow: -14px 0 40px rgba(0, 0, 0, 0.45);
}
html[data-theme="dark"] .side-menu-header,
html[data-theme="dark"] .menu-section {
    border-color: #263449;
}
html[data-theme="dark"] .side-menu-header small,
html[data-theme="dark"] .menu-section-title,
html[data-theme="dark"] .menu-item {
    color: #cbd5e1;
}
html[data-theme="dark"] .menu-item:hover,
html[data-theme="dark"] .menu-item.active {
    background: #1e3a5f;
    color: #93c5fd;
}
html[data-theme="dark"] .header .logo-placeholder,
html[data-theme="dark"] .header .slogan strong,
html[data-theme="dark"] .tab-content h2,
html[data-theme="dark"] .tab-content h3,
html[data-theme="dark"] .card .value,
html[data-theme="dark"] .quick-action,
html[data-theme="dark"] .transfer-card h3,
html[data-theme="dark"] .ficha-heading h3,
html[data-theme="dark"] .ficha-resumo strong,
html[data-theme="dark"] .fornecedor-form-card h3,
html[data-theme="dark"] .section-heading h3,
html[data-theme="dark"] .produto-config legend,
html[data-theme="dark"] .produto-config summary,
html[data-theme="dark"] .integracao-resumo strong,
html[data-theme="dark"] .footer strong {
    color: #f1f5f9;
}
html[data-theme="dark"] .header .slogan,
html[data-theme="dark"] .header .user-badge small,
html[data-theme="dark"] .card h3,
html[data-theme="dark"] .card .card-detail,
html[data-theme="dark"] .quick-action small,
html[data-theme="dark"] .quick-actions-heading p,
html[data-theme="dark"] .modulo-descricao,
html[data-theme="dark"] .section-heading p,
html[data-theme="dark"] .ficha-heading p,
html[data-theme="dark"] .ficha-resumo small,
html[data-theme="dark"] .ficha-nota,
html[data-theme="dark"] .integracao-heading p,
html[data-theme="dark"] .integracao-grid label small,
html[data-theme="dark"] .integracao-ultima-sync,
html[data-theme="dark"] .integracao-resumo span,
html[data-theme="dark"] .integracao-legenda,
html[data-theme="dark"] .integracao-vazio,
html[data-theme="dark"] .configuracao-toggle small,
html[data-theme="dark"] .footer {
    color: #94a3b8;
}
html[data-theme="dark"] .produto-item,
html[data-theme="dark"] .dre-table-wrap,
html[data-theme="dark"] .import-preview-area {
    border-color: #334155;
}
html[data-theme="dark"] .import-linha-erro { background: #3b1820; }
html[data-theme="dark"] .import-linha-negativa { background: #3a2d13; }
html[data-theme="dark"] .import-status-ok { color: #86efac; }
html[data-theme="dark"] .import-status-aviso { color: #fde68a; }
html[data-theme="dark"] .import-status-erro,
html[data-theme="dark"] .import-produto-invalido { color: #fca5a5; }
html[data-theme="dark"] .import-ajuda-unidades { color: #94a3b8; }
html[data-theme="dark"] .header .user-badge,
html[data-theme="dark"] .empresa-badge,
html[data-theme="dark"] .header .btn-theme,
html[data-theme="dark"] .header .btn-dashboard {
    background: #172033;
    color: #dbeafe;
    border-color: #334155;
}
html[data-theme="dark"] .header .btn-theme:hover,
html[data-theme="dark"] .header .btn-dashboard:hover {
    background: #26364d;
}
html[data-theme="dark"] #app-content input,
html[data-theme="dark"] #app-content select,
html[data-theme="dark"] #app-content textarea {
    background: #0f172a !important;
    color: #e2e8f0 !important;
    border-color: #475569 !important;
}
html[data-theme="dark"] #app-content input::placeholder,
html[data-theme="dark"] #app-content textarea::placeholder {
    color: #718096;
}
html[data-theme="dark"] #app-content input:disabled,
html[data-theme="dark"] #app-content select:disabled,
html[data-theme="dark"] #app-content textarea:disabled {
    background: #263449 !important;
    color: #94a3b8 !important;
}
html[data-theme="dark"] table {
    color: #dbe5f0;
}
html[data-theme="dark"] thead,
html[data-theme="dark"] th {
    background: #253349;
    color: #f1f5f9;
    border-color: #3d4d63;
}
html[data-theme="dark"] td {
    background: #1e293b;
    color: #dbe5f0;
    border-color: #334155;
}
html[data-theme="dark"] tbody tr:hover td {
    background: #26364d;
}
html[data-theme="dark"] .comparativo-produto td,
html[data-theme="dark"] .integracao-resumo .ok {
    background: #172b46;
    color: #bfdbfe;
    border-color: #31557d;
}
html[data-theme="dark"] .sem-proposta,
html[data-theme="dark"] .sem-proposta td,
html[data-theme="dark"] .integracao-divergente,
html[data-theme="dark"] .integracao-divergente td,
html[data-theme="dark"] .integracao-resumo .erro {
    background: #3a2028;
    color: #fecaca;
    border-color: #713747;
}
html[data-theme="dark"] hr,
html[data-theme="dark"] .footer,
html[data-theme="dark"] .form-section-title,
html[data-theme="dark"] .explosao-linha {
    border-color: #334155;
}
html[data-theme="dark"] .menu-overlay {
    background: rgba(2, 6, 23, 0.72);
}
html[data-theme="dark"] .barra {
    box-shadow: 0 0 0 1px rgba(255,255,255,0.08);
}
html[data-theme="dark"] .status-badge {
    border: 1px solid rgba(255, 255, 255, 0.08);
}
html[data-theme="dark"] .dre-card,
html[data-theme="dark"] .dre-section {
    background: #1e293b;
    color: #e2e8f0;
    border-color: #334155;
}
html[data-theme="dark"] .dre-heading h3,
html[data-theme="dark"] .dre-periodo,
html[data-theme="dark"] .dre-cards strong,
html[data-theme="dark"] .relatorio-status,
html[data-theme="dark"] .relatorio-status strong,
html[data-theme="dark"] .import-box h4 {
    color: #f1f5f9;
}
html[data-theme="dark"] .dre-heading p,
html[data-theme="dark"] .dre-cards span,
html[data-theme="dark"] .dre-nota,
html[data-theme="dark"] .dre-sem-dados {
    color: #94a3b8;
}
html[data-theme="dark"] .dre-cards article {
    background: #172033;
    border-color: #334155;
}
html[data-theme="dark"] .dre-cards .dre-resultado-card {
    background: #143526;
    border-color: #276749;
}
html[data-theme="dark"] .dre-cards .dre-resultado-card strong {
    color: #86efac;
}
html[data-theme="dark"] .dre-cards .dre-resultado-card.negativo {
    background: #3a2028;
    border-color: #713747;
}
html[data-theme="dark"] .dre-cards .dre-resultado-card.negativo strong {
    color: #fca5a5;
}
html[data-theme="dark"] .dre-aviso {
    background: #3b3018;
    color: #fde68a;
}
html[data-theme="dark"] .dre-aviso.success {
    background: #143526;
    color: #86efac;
}
html[data-theme="dark"] .dre-aviso.error {
    background: #3a2028;
    color: #fca5a5;
}

/* Consultas v7.0.8.6 */
.consulta-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:18px; }
.consulta-heading h2, .consulta-heading h3 { margin:0 0 5px; color:#172033; }
.consulta-heading p { margin:0; color:#64748b; line-height:1.45; }
.consulta-heading-actions { display:flex; flex-wrap:wrap; gap:9px; justify-content:flex-end; }
.consulta-card { background:#fff; border:1px solid #dce4ed; border-radius:14px; padding:22px; margin-bottom:20px; box-shadow:0 8px 24px rgba(15,23,42,.05); }
.consulta-filtros { display:grid; grid-template-columns:repeat(auto-fit,minmax(155px,1fr)); align-items:end; gap:12px; padding:15px; border:1px solid #e2e8f0; background:#f8fafc; border-radius:11px; margin-bottom:16px; }
.consulta-filtros label { display:flex; flex-direction:column; gap:5px; color:#475569; font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.025em; }
.consulta-filtros input, .consulta-filtros select { width:100%; padding:9px 10px; border:1px solid #cbd5e1; border-radius:8px; background:#fff; color:#172033; font-size:.9rem; text-transform:none; letter-spacing:normal; }
.consulta-aviso { padding:11px 14px; border-left:4px solid #3b82f6; border-radius:7px; background:#eff6ff; color:#1e40af; line-height:1.45; margin:12px 0; }
.consulta-aviso.success { border-color:#16a34a; background:#f0fdf4; color:#166534; }
.consulta-aviso.warning { border-color:#f59e0b; background:#fffbeb; color:#854d0e; }
.consulta-aviso.error { border-color:#dc2626; background:#fef2f2; color:#991b1b; }
.consulta-contexto { color:#475569; font-size:.88rem; font-weight:700; margin:18px 0 10px; }
.consulta-nota { color:#64748b; font-size:.82rem; line-height:1.45; }
.consulta-tabela { margin-top:14px; }
.consulta-tabela th { white-space:nowrap; }
.consulta-tabela td { vertical-align:middle; }
.consulta-sem-dados { text-align:center!important; color:#64748b; padding:28px!important; }
.consulta-subtexto { display:block; color:#94a3b8; margin-top:3px; }
.indicador-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:12px; margin-top:16px; }
.indicador-grid article { padding:16px; border:1px solid #e2e8f0; background:#f8fafc; border-radius:11px; min-width:0; }
.indicador-grid span { display:block; color:#64748b; font-size:.8rem; margin-bottom:7px; }
.indicador-grid strong { display:block; color:#172033; font-size:1.3rem; overflow-wrap:anywhere; }
.indicador-grid small { display:block; margin-top:6px; color:#64748b; }
.indicador-grid .indicador-positivo { border-color:#bbf7d0; background:#f0fdf4; }
.indicador-grid .indicador-positivo strong { color:#15803d; }
.indicador-grid .indicador-negativo { border-color:#fecaca; background:#fef2f2; }
.indicador-grid .indicador-negativo strong { color:#dc2626; }
.indicador-grid .indicador-informativo { border-style:dashed; }
.dre-resultado-card.negativo { border-color:#fecaca!important; background:#fef2f2!important; }
.dre-resultado-card.negativo strong { color:#dc2626!important; }
.criterio-selector { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:16px; }
.criterio-btn { display:flex; flex-direction:column; align-items:flex-start; gap:4px; padding:14px 16px; text-align:left; border:1px solid #d8e0e9; border-radius:10px; background:#fff; color:#475569; cursor:pointer; transition:.16s ease; }
.criterio-btn:hover { border-color:#94a3b8; transform:translateY(-1px); }
.criterio-btn.active { border-color:#f05a37; color:#172033; box-shadow:inset 0 0 0 1px #f05a37; background:#fffaf8; }
.criterio-btn strong { font-size:.92rem; }
.criterio-btn small { color:#94a3b8; }
.classe-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:16px; }
.classe-grid article { border:1px solid #e2e8f0; border-radius:12px; padding:16px; }
.classe-grid span, .classe-grid small { display:block; }
.classe-grid span { font-size:.8rem; font-weight:900; text-transform:uppercase; }
.classe-grid strong { display:block; font-size:1.35rem; margin:9px 0 6px; }
.classe-grid small { color:#64748b; }
.classe-a { background:#f0fdf4; border-color:#bbf7d0!important; color:#15803d; }
.classe-b { background:#fffbeb; border-color:#fde68a!important; color:#b45309; }
.classe-c { background:#fef2f2; border-color:#fecaca!important; color:#dc2626; }
.classe-tag, .situacao-tag { display:inline-flex; padding:4px 8px; border-radius:999px; font-size:.72rem; font-weight:900; white-space:nowrap; }
.classe-tag { min-width:28px; justify-content:center; }
.classe-a, .situacao-ok { background:#dcfce7; color:#166534; }
.classe-b { background:#fef3c7; color:#92400e; }
.classe-c, .situacao-alto { background:#fee2e2; color:#991b1b; }
.situacao-sem_preco { background:#e2e8f0; color:#475569; }
.exportacao-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:12px; }
.exportacao-card { display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; column-gap:12px; padding:17px; border:1px solid #dce4ed; border-radius:11px; background:#fff; color:#172033; text-align:left; cursor:pointer; }
.exportacao-card:hover { border-color:#3b82f6; background:#f8fbff; }
.exportacao-card > span { grid-row:1 / 3; font-size:1.5rem; }
.exportacao-card strong { font-size:.92rem; }
.exportacao-card small { color:#64748b; margin-top:3px; }
.fiscal-detalhe { border-top:4px solid #3b82f6; }
.fiscal-xml { max-height:520px; overflow:auto; margin:0; padding:16px; border-radius:9px; background:#0f172a; color:#dbeafe; font:12px/1.55 Consolas,monospace; white-space:pre-wrap; word-break:break-word; }
.acoes-tabela { display:flex; gap:6px; }

html[data-theme="dark"] .consulta-heading h2,
html[data-theme="dark"] .consulta-heading h3,
html[data-theme="dark"] .indicador-grid strong { color:#f1f5f9; }
html[data-theme="dark"] .consulta-heading p,
html[data-theme="dark"] .consulta-contexto,
html[data-theme="dark"] .consulta-nota,
html[data-theme="dark"] .consulta-subtexto { color:#94a3b8; }
html[data-theme="dark"] .consulta-card,
html[data-theme="dark"] .criterio-btn,
html[data-theme="dark"] .exportacao-card { background:#172033; border-color:#334155; color:#e2e8f0; }
html[data-theme="dark"] .consulta-filtros,
html[data-theme="dark"] .indicador-grid article { background:#111c2e; border-color:#334155; }
html[data-theme="dark"] .consulta-filtros label { color:#cbd5e1; }
html[data-theme="dark"] .consulta-filtros input,
html[data-theme="dark"] .consulta-filtros select { background:#0f172a; border-color:#475569; color:#f8fafc; }
html[data-theme="dark"] .criterio-btn.active { border-color:#fb7b5d; background:#2a1d1b; color:#fff; }
html[data-theme="dark"] .exportacao-card:hover { background:#1e293b; border-color:#60a5fa; }

@media (max-width:760px) {
    .consulta-heading { flex-direction:column; }
    .consulta-heading-actions { width:100%; justify-content:flex-start; }
    .criterio-selector, .classe-grid { grid-template-columns:1fr; }
    .consulta-card { padding:15px; }
}

@media (max-width: 768px) {
    .header .btn-theme { padding: 9px 12px; }
    .header .theme-label { display: none; }
    .produtos-topo { flex-direction: column; }
    .produtos-topo .btn { width: 100%; }
    .entradas-topo { flex-direction: column; }
    .entradas-topo .btn { width: 100%; }
    .entrada-escolha { grid-template-columns: 1fr; }
    .entrada-opcao { min-height: 145px; }
    .produtos-filtros > * { width: 100%; min-width: 0 !important; }
    .produtos-total { margin-left: 0; }
    .modal-produto { width: calc(100% - 16px); max-height: calc(100vh - 16px); }
    .modal-produto-conteudo { max-height: calc(100vh - 16px); padding: 17px; }
    .produto-resumo-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .produto-periodo > * { width: 100%; }
    .produto-periodo input { width: 100%; }
}

@media (max-width: 430px) {
    .header .btn-theme { padding: 9px 10px; }
    .produto-resumo-cards { grid-template-columns: 1fr; }
    .backup-mensagem { display: block; margin: 8px 0 0; }
}

.integracao-mensagem { white-space: pre-line; }
#pdv-historico-tbody details { min-width: 180px; }
#pdv-historico-tbody summary { cursor: pointer; font-weight: 700; }
#pdv-historico-tbody pre { white-space: pre-wrap; margin: 8px 0 0; font: inherit; color: inherit; }
