
        * { box-sizing: border-box; }
        body { font-family: Arial, sans-serif; font-size: 12px; background-color: #f8fafc; margin: 0; padding: 0; color: #333; }
        
        /* BANNER AZUL */
        .tc-header-banner { background-color: #FFF; color: #085e9e; padding: 15px 20px 10px 20px; }
        .banner-row-top { display: flex; justify-content: space-between; align-items: flex-start; }
        .logo-box { display: flex; align-items: center; gap: 12px; }
        .logo-box svg { fill: #ffffff; width: 42px; height: 42px; }
        .logo-title-main { font-size: 26px; font-weight: bold; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; letter-spacing: -0.5px; line-height: 1; }
        .logo-title-sub { font-size: 11px; font-weight: 600; letter-spacing: 1.5px; margin-top: 4px; text-transform: uppercase; color: #dbeafe; }
        .date-info { font-size: 12px; font-weight: bold; }

        .banner-row-bottom { display: flex; justify-content: space-between; align-items: flex-end; margin-top: 0px; }
        .page-title { font-size: 14px; font-weight: bold; }
        .norma-link { font-size: 12px; font-weight: bold; text-align: right; }
        .norma-link a { color: #ffffff; text-decoration: none; }
        .norma-link a:hover { text-decoration: underline; }

        /* BARRA DE AÇÕES */
        .tc-toolbar { display: flex; justify-content: start; align-items: center; padding: 10px 20px; background-color: #ffffff; border-bottom: 1px solid #cbd5e1; }
        .btn-action { background-color: #ffffff; border: 1px solid #cbd5e1; color: #475569; padding: 6px 14px; border-radius: 3px; font-size: 11px; cursor: pointer; text-decoration: none; display: inline-block; transition: all 0.2s; margin-right: 8px;}
        .btn-action:hover { background-color: #f1f5f9; color: #1e293b; border-color: #94a3b8; }
        .btn-action.active { background-color: #e2e8f0; font-weight: bold; }

        /* DROPDOWN DE EXPORTAÇÃO */
        .dropdown-export { position: relative; display: inline-block; }
        .btn-export-dropdown { background-color: #ffffff; border: 1px solid #cbd5e1; color: #475569; padding: 6px 14px; border-radius: 3px; font-size: 11px; cursor: pointer; text-decoration: none; display: inline-block; transition: all 0.2s; }
        .btn-export-dropdown:hover { background-color: #f1f5f9; color: #1e293b; border-color: #94a3b8; }
        .btn-export-dropdown svg { fill: #085e9e; width: 13px; height: 13px; }

        .dropdown-menu-content {
            display: none;
            position: absolute;
            right: 0;
            top: 100%;
            margin-top: 2px;
            background-color: #ffffff;
            min-width: 120px;
            box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.15);
            border: 1px solid #cbd5e1;
            z-index: 1000;
            border-radius: 2px;
        }
        .dropdown-menu-content.show { display: block; }
        .dropdown-menu-content a {
            color: #334155;
            padding: 7px 12px;
            text-decoration: none;
            display: block;
            font-size: 11px;
            font-weight: 500;
            border-bottom: 1px solid #f1f5f9;
            transition: background 0.15s, color 0.15s;
        }
        .dropdown-menu-content a:last-child { border-bottom: none; }
        .dropdown-menu-content a:hover { background-color: #f8fafc; color: #085e9e; font-weight: bold; }

        /* PAINEL DE FILTRO RETRÁTIL */
        .filter-panel { display: <?= $hasFilterActive ? 'block' : 'none' ?>; background-color: #ffffff; border-bottom: 2px solid #cbd5e1; padding: 15px 20px; }
        .filter-table { width: 100%; border-collapse: collapse; }
        .filter-table td { padding: 6px 8px; vertical-align: middle; }
        .filter-label { font-weight: bold; width: 140px; color: #334155; }
        .filter-input { width: 100%; max-width: 400px; padding: 5px 8px; border: 1px solid #cbd5e1; border-radius: 3px; font-size: 12px; }
        .filter-input-short { width: 100px; padding: 5px 8px; border: 1px solid #cbd5e1; border-radius: 3px; font-size: 12px; }
        .filter-date-group { display: flex; align-items: center; gap: 8px; }
        .filter-actions { text-align: center; margin-top: 15px; display: flex; justify-content: center; gap: 10px; }

        /* CONTEÚDO E GRID */
        .content-container { padding: 15px 20px; }
        .info-count { font-size: 12px; color: #475569; font-weight: bold; margin-bottom: 10px; }

        .grid-table { width: 100%; border-collapse: collapse; background: #fff; border: 1px solid #cbd5e1; }
        .grid-table th { background-color: #dce3ea; color: #475569; padding: 8px; text-align: left; font-weight: bold; border-bottom: 2px solid #cbd5e1; }
        .grid-table td { padding: 8px; border-bottom: 1px solid #e2e8f0; vertical-align: middle; }
        
        .master-row { cursor: pointer; transition: background 0.2s; }
        .master-row:hover { background-color: #f1f5f9; }
        .toggle-icon { display: inline-block; width: 12px; font-size: 10px; color: #64748b; margin-right: 5px; }
        
        .detail-row { display: none; background-color: #ebf3f9; }
        .detail-row.open { display: table-row; }
        .detail-container { padding: 10px 15px 10px 40px; }
        
        .sub-table { width: 100%; border-collapse: collapse; background-color: #ffffff; border: 1px solid #cbd5e1; }
        .sub-table th { background-color: #dbeade; color: #334155; padding: 6px; font-size: 11px; text-align: left; }
        .sub-table td { padding: 6px; border-bottom: 1px solid #f1f5f9; font-size: 11px; }

        /* PAGINAÇÃO */
        .pagination-container { display: flex; justify-content: space-between; align-items: center; margin-top: 15px; background-color: #fff; padding: 10px 15px; border: 1px solid #cbd5e1; border-radius: 4px; }
        .pagination-buttons { display: flex; gap: 4px; }
        .page-link { padding: 5px 10px; border: 1px solid #cbd5e1; background: #fff; color: #334155; text-decoration: none; border-radius: 3px; font-weight: bold; }
        .page-link:hover { background-color: #f1f5f9; }
        .page-link.active { background-color: #085e9e; color: white; border-color: #085e9e; }
        .page-link.disabled { color: #94a3b8; pointer-events: none; background-color: #f8fafc; }

        @media print {
            .tc-toolbar, .filter-panel, .pagination-container { display: none !important; }
            .detail-row { display: table-row !important; }
        }
    